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
378aa7db12
fix nested frameless windows & other minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-01-18 13:43:51 +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
eb6fc55006
quick: remove unneeded enums, fix warning
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2023-01-13 17:47:37 +08:00
Yuhang Zhao
a5586604e9
quick: fix build error
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-28 11:22:40 +08:00
Yuhang Zhao
a381836ef7
linux: further improvements
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-19 16:37:48 +08:00
1bbb
4844257fc8
支持嵌套无边框组件
2022-12-15 11:32:57 +08:00
Yuhang Zhao
b420e67fad
cmake: fix warning from Qt 6.5
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-13 15:58:49 +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
ed3771c949
replace qRound with std::round
...
It's better to do so.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-12 09:34:46 +08:00
Yuhang Zhao
b1f52837d2
replace qAsConst with std::as_const
...
qAsConst is being deprecated in latest qtbase code.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-12 09:30:16 +08:00
Yuhang Zhao
64ef4b25ca
fix MSVC warning found by /W4
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-06 16:06:13 +08:00
Yuhang Zhao
f956c1c002
cmake: minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-05 17:12:17 +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
48a1106fc0
Allow build with no private Qt modules
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-12-04 14:25:09 +08:00
Yuhang Zhao
40058a1e79
cmake: allow disable resource bundle
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-26 16:44:41 +08:00
Yuhang Zhao
ff5b171566
win: final fix of the multi-monitor bug
...
#141
#184
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-23 14:54:46 +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
3791802d3b
win: add support for mica alt and other tweaks
...
Add some more comments to the windows header.
Remove the usages of UseRoundWindowCorner.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-16 14:10:49 +08:00
Yuhang Zhao
2c93d7fe38
some minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-13 13:24:30 +08:00
Yuhang Zhao
524f65cc9b
win: some minor improvements
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-11 15:25:39 +08:00
Yuhang Zhao
027780429d
win: add more safe guards to dpi hacks
...
And some other minor improvements.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-11 11:38:06 +08:00
Yuhang Zhao
70a71822da
use better solution to disable logging
...
Thank very much to @SineStriker !
Fixes : #181
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-10 14:15:05 +08:00
Yuhang Zhao
c75712d3f1
Add option to suppress debug messages
...
Fixes : #177
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-11-02 15:13:47 +08:00
Yuhang Zhao
c29e6de2e1
try to fix ci
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-18 10:52:04 +08:00
Yuhang Zhao
85366ba667
Revert "misc: use better code style"
...
This reverts commit 3889e49583
.
Reason for revert: breaks CI, and no siginificant improvement.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-18 09:22:00 +08:00
Yuhang Zhao
3889e49583
misc: use better code style
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-17 18:01:41 +08:00
Yuhang Zhao
ca8e9f555d
quick: remove now useless workaround
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-14 10:24:46 +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
994b02ad6c
quick: add FramelessApplicationWindow element
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-12 10:47:41 +08:00
Yuhang Zhao
fcf51d6d73
refactor
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-11 11:52:49 +08:00
Yuhang Zhao
1e43ba2e81
improve windowborder element
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-10 22:12:01 +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
b50a2dcd72
fix Qt5 compilation error
...
And change to lazy initialization for Mica Material.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-09 10:08:49 +08:00
Yuhang Zhao
d483c39b9a
add way to disable window maximization
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-10-08 15:25:22 +08:00
Yuhang Zhao
ac9a05209e
quick: fix misleading and annoying warning
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-30 12:58:13 +08:00
Yuhang Zhao
57a4d8875c
cmake: improve the build scripts
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-27 21:13:46 +08:00
Yuhang Zhao
07101273bd
win: refactor & simplify
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-26 11:18:13 +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
47dcb8f032
quick: emulate Windows behavior more, just like widget
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-14 17:07:06 +08:00
Yuhang Zhao
221f1c12aa
fix button size can't be changed
...
widget: fix the bug
quick: add the interface to change size
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-09-13 17:38:10 +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
7a35b09a74
add limited qmake support
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-31 16:34:30 +08:00
Yuhang Zhao
abf4b29dca
minor fixes of the last commit
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-31 10:45:26 +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
ce78c037b1
add some helper functionalities
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-28 19:25:22 +08:00
Yuhang Zhao
c3338cd9b7
win: don't use round corner when fullscreen on win11
...
Fixes : #149
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-26 15:54:56 +08:00
Yuhang Zhao
6c060b3946
demo: add shortcut to switch between fullscreen state
...
Can also help use better debugging the old style window frame
issue on Windows.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-21 15:38:43 +08:00
Yuhang Zhao
0535276f55
win: use Qt functionalities as much as possible
...
If Qt provides the functionalities we need, use it
instead of reinventing the wheel.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-08-16 15:24:14 +08:00
Yuhang Zhao
775b1a2aab
minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-30 11:34:14 +08:00
Yuhang Zhao
cf83b050d2
common: minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-29 15:36:28 +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
7f9f2c8543
adapt to latest qt change
...
And install some missing files
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-13 10:40:29 +08:00
Yuhang Zhao
5e863ee661
cmake: fix include dir for package
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-12 14:58:20 +08:00
Yuhang Zhao
2f36d1f73e
blur behind window: add macos implementation
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-09 14:59:47 +08:00
Yuhang Zhao
7e3a735a7d
minor tweaks and improvements
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-09 12:10:41 +08:00
Yuhang Zhao
2a113ee8ab
Allow build as a CMake package, support the install command
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-08 13:47:50 +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
01828e086f
quick blur demo: fix typo
...
And minor improvements to the win32 utils code.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-06 18:01:24 +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
Yuhang Zhao
cbf34ea0ec
win32: try to fix bug
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-04 13:03:23 +08:00
Yuhang Zhao
71f8a5aab1
add blurBehindWindowEnabled property
...
Current only implements for Windows,
macOS will be implemented later,
Linux won't be supported in the near future.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-03 16:01:19 +08:00
Yuhang Zhao
f90b49538a
add support for qmltc tool
...
Also remove one useless enum.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-07-01 15:52:28 +08:00
Yuhang Zhao
66250dbb6e
cmake: minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-06-27 14:15:34 +08:00
Yuhang Zhao
6683a183d7
cmake: a little simplification
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-06-27 10:00:23 +08:00
Yuhang Zhao
7b769a71a0
minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-06-26 14:57:18 +08:00
Yuhang Zhao
a89f19af96
2.1.7 release
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-06-25 19:38:41 +08:00
Yuhang Zhao
75f19218c6
minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-06-24 21:38:26 +08:00
Yuhang Zhao
888f9d0aca
standardsystembutton: use icon font instead of svg images
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-06-24 18:04:49 +08:00
Yuhang Zhao
a04fd53a38
general improvements
...
1. replace raw char array with QByteArray
2. Register QWindow for Quick module
3. Account for hidden and disable state when hovering controls
4. fix quick title bar label alignment
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-06-01 11:16:34 +08:00
Yuhang Zhao
0cff5ff48e
add "hideWhenClose" property
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-23 21:09:09 +08:00
Yuhang Zhao
093040ec93
make windowFixedSize a Qt property
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-23 15:17:34 +08:00
Yuhang Zhao
6fe3dd1088
cmake: minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-23 14:46:20 +08:00
Yuhang Zhao
5754f2ec20
common: improve robustness
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-20 17:36:44 +08:00
Yuhang Zhao
44b3730056
quick: remove not used code
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-19 10:23:18 +08:00
Yuhang Zhao
6731007e35
quick: make sure top border stays on top
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-18 18:00:56 +08:00
Yuhang Zhao
3a0e6f081f
titlebar: allow use alternative background
...
Set this property to true if you want to use your own background color/pixmap
instead of system's current accent color.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-15 11:46:27 +08:00
Yuhang Zhao
1cd39fd7b2
quick: a little code simplification
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-14 10:02:42 +08:00
Yuhang Zhao
45b3657d7e
minor tweaks
...
Doesn't seem to affect the final appearance
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-13 20:51:03 +08:00
Yuhang Zhao
d13d74783f
quick: simplify implementation
...
1. Merge the three system buttons into one class.
2. Fixed some color calculation errors of system button.
3. Removed some not used bundled resources.
4. Added function to retrieve runtime version of FramelessHelper.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-13 17:33:01 +08:00
Yuhang Zhao
8042a78b8f
various fixes and improvements
...
1. Make all demo applications be able to record and restore the previous window geometry.
2. Improve the robustness of the widgets and quick implementation.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-13 14:19:50 +08:00
Yuhang Zhao
5c3b8b70df
general: fix the system button background color in various cases
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-12 17:25:10 +08:00
Yuhang Zhao
8cb24c61b3
general improvements
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-12 15:07:57 +08:00
Yuhang Zhao
ab20f3433b
remove useless code
...
And that also fixes the bug for Qt Quick applications
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-11 20:24:29 +08:00
Yuhang Zhao
a1acc3e06f
common: minor tweaks
...
Code simplification, format changes, etc ...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-11 17:32:14 +08:00
Yuhang Zhao
54496f9fe0
lower warning level for msvc
...
Bug reports from users indicate that /W4 causes many
warnings for MSVC 2019 and the warnings come from
private Qt headers so no way to fix them in FramelessHelper.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-09 11:39:15 +08:00
Yuhang Zhao
a10ac4e32d
demos: simplify some code
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-08 18:24:09 +08:00
Yuhang Zhao
053d6b104e
centralize how we handle global options
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-08 16:09:00 +08:00
Yuhang Zhao
286811c9df
expose private headers, someone may need
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-07 18:02:44 +08:00
Yuhang Zhao
c936a7da80
minor tweaks
...
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-06 21:00:07 +08:00
Yuhang Zhao
e7f434c5a4
demo: center window on first show
...
Looks better than before.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
2022-05-05 20:23:35 +08:00