Zhao Yuhang
2cb8ec0aeb
win: minor fix
2023-10-19 20:13:34 +08:00
Zhao Yuhang
ff4b9f3879
minor tweaks
2023-10-15 13:16:10 +08:00
Yuhang Zhao
a9642dccfc
support elided title text
2023-10-08 13:27:15 +08:00
Yuhang Zhao
d86f55832f
refactor
2023-10-04 11:37:39 +08:00
Yuhang Zhao
7b41f9aa31
cmake fixes
2023-09-12 18:15:10 +08:00
Yuhang Zhao
6abb636a19
large refactor
2023-08-27 15:12:06 +08:00
Yuhang Zhao
f7368d0a08
widgets: PIMPL refactor
2023-08-25 17:50:22 +08:00
Yuhang Zhao
a130fef677
win: refactor
2023-08-23 18:04:31 +08:00
SineStriker
8ac3d747a1
Fix hover event and system buttons ( #262 )
...
* Fix hover event
* Fix system button
2023-08-19 14:48:26 +08:00
Yuhang Zhao
86bc1c0142
cleanup & optimize, part 2
...
The file size of FramelessHelper binaries should be smaller than before. Core: Win32 MSVC2022 x64 release build, -20KB
The general performance should be improved, due to double lookups are all eliminated.
2023-07-30 18:28:38 +08:00
Yuhang Zhao
c6ca6cc794
include std headers, avoid transitive include
2023-07-29 15:57:03 +08:00
Yuhang Zhao
4ed21585b4
cleanup core module
...
Core mostly done. TODO: Widgets & Quick module
2023-07-29 15:29:38 +08:00
Yuhang Zhao
a3cfa59d1d
improve dpi change experience
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-05-13 11:30:54 +08:00
Yuhang Zhao
632a708c8a
fix white-line issue for QWidget applications
...
Fixes : #204
Signed-off-by: Yuhang Zhao <zhaoyuhang@rankyee.com>
2023-04-07 16:41:39 +08:00
Yuhang Zhao
2a6b8e6ebe
fix compilation error
...
Fixes : #211
2023-03-30 10:28:31 +08:00
Yuhang Zhao
598de50290
add synchronize api to wait for the ready signal
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-02-24 13:13:01 +08:00
Yuhang Zhao
4929707806
fix header search path
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-02-17 09:17:15 +08:00
Yuhang Zhao
14ccc990cf
general refactor, remove useless code
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-02-05 14:01:46 +08:00
Yuhang Zhao
3d37d87c81
win: tweak some enum values
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-02-03 11:18:08 +08:00
Yuhang Zhao
ed75e2f3e8
adapt to latest Qt code style
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-01-27 18:16:32 +08:00
Yuhang Zhao
7534a4631c
migrate to the <module/file> include pattern
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-01-18 14:27:10 +08:00
Yuhang Zhao
4896869123
use better name
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-01-18 10:00:18 +08:00
Yuhang Zhao
5e7ddb1864
quick: adapt macos updates
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-01-15 14:11:52 +08:00
Yuhang Zhao
819ffb79fb
macOS: widgets: preserve the native title bar elements
...
Quick part to be done.
2023-01-14 18:32:47 +08:00
Yuhang Zhao
c849217d43
fix build on linux and macos
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-12 14:55:17 +08:00
Yuhang Zhao
f00adba67c
replace QScopedPointer with std::unique_ptr
...
QScopedPointer is being deprecated in latest qtbase code.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-12 11:59:53 +08:00
Yuhang Zhao
cb88b602fe
minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-05 14:33:38 +08:00
Yuhang Zhao
3961ecb505
quick: fix a regression
...
Looks like we can't use overloads in QML documents.
Should fix #183
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-21 17:12:33 +08:00
Yuhang Zhao
f15ca8daf0
fix various issues
...
1. Fix mica material doesn't work normally when used on multiple windows.
2. Fix build on Qt5.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-12 14:08:58 +08:00
Yuhang Zhao
fcf51d6d73
refactor
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-11 11:52:49 +08:00
Yuhang Zhao
92415fb61c
Add WindowBorderPainter and WindowBorder
...
1. Added WindowBorderPainter for QtWidgets
2. Added WindowBorder for QtQuick (uses WindowBorderPainter internally)
3. Adjust some header includes
4. Limit a Linux workaround to the appropriate Qt versions
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-10 13:35:37 +08:00
Yuhang Zhao
f97f000cc7
avoid potential deadlocks
...
And some other minor tweaks.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-25 10:35:00 +08:00
Yuhang Zhao
eeda750a61
finalize api update
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-21 13:22:03 +08:00
Yuhang Zhao
47bf4da5ae
allow user to remove a window from the frameless window list
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-20 15:56:59 +08:00
Yuhang Zhao
3d3607af7b
refactor
...
and maybe avoid potential bugs.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-16 17:38:13 +08:00
Yuhang Zhao
91bb8273b8
routine code quality improvement
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-15 18:24:34 +08:00
Yuhang Zhao
1b36587f14
widgets: emulate Windows behavior more
...
On Windows, when you left click the window icon in the title bar, the system menu will be triggered.
And when you double click it, the window will be closed.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-14 13:30:08 +08:00
Yuhang Zhao
55fe04000e
add more comments
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-11 10:43:48 +08:00
Jan Kowalewicz
6a46844853
win: Qt version check for #155 ( #157 )
2022-09-11 10:23:01 +08:00
Jan Kowalewicz
f2affbca85
win: fix build with Qt 5.14 and MinGW ( #155 )
2022-09-10 16:38:40 +08:00
Yuhang Zhao
34596db939
fix various issues found by user
...
Issue list:
1. MinGW lacks some definitions so there's compilation errors
2. The chrome buttons' foreground color is incorrect when the window is inactive.
3. Adapt to new macros from Qt dev branch.
4. Remove unneeded parameter from setApplicationOSThemeAware().
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-10 13:11:55 +08:00
Yuhang Zhao
b9f65aa783
add frameless dialog & demo
...
And some other minor fixes.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-05 15:00:02 +08:00
Yuhang Zhao
5018d9ea82
widget: add support for changing title font
...
Not needed for Qt Quick, because you can easily to change it:
```qml
StandardTitleBar {
titleLabel {
font {
family: "Arial"
pointSize: 10
italic: true
}
}
}
```
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-02 10:39:45 +08:00
Yuhang Zhao
7a35b09a74
add limited qmake support
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-31 16:34:30 +08:00
Yuhang Zhao
463ac0a999
add window icon support
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-31 10:21:24 +08:00
Yuhang Zhao
7616161699
Implement homemade Mica material & other improvements
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-16 15:25:15 +08:00
Yuhang Zhao
011b4a85f5
fix Qt5 build
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-07 16:22:34 +08:00
Yuhang Zhao
2806cc811b
code simplification, minor re-structure
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-07 13:43:09 +08:00
Yuhang Zhao
464e2af515
finish the chrome palette implementation
...
And with some other minor tweaks that improve user experience.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-06 14:24:41 +08:00
Yuhang Zhao
e8dcb6e6fe
add api to set title bar and chrome button color
...
TODO:
1. Special handling for the close button
2. Move QuickChromePalette class to own files
3. More testing
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-05 17:58:04 +08:00