Commit graph

60 commits

Author SHA1 Message Date
John Preston
8f03125ec1 Fix build with Xcode. 2023-07-20 10:19:51 +04:00
John Preston
ae46510920 Cancel system move if didn't start (macOS). 2023-07-20 09:59:54 +04:00
Ilya Fedin
19d044a212 Move TitleControlsLayout from ui_platform_utility to ui_platform_window_title 2023-07-19 14:42:06 +04:00
John Preston
8db6dcf125 Workaround Wayland popup menu bug.
When hiding a child popup first the app receives ApplicationDeactivate
event and in a short time (a couple of ms) ApplicationActivate.

But the first event hides all popups, so the parent popup gets closed too.

Delay handling of ApplicationDeactivate event in this specific case.
2023-07-12 22:05:12 +04:00
Ilya Fedin
6abad69ca6 Cache title controls layout value
So it's not requested on every window width change and etc...
2023-07-04 15:44:46 +04:00
John Preston
bfdd116000 Handle emoji myself in custom macOS title. 2023-04-26 22:50:22 +04:00
Ilya Fedin
f5fb567052 Take advantage of RHI
Use Metal with Qt 6.4+ and macOS 10.14+, OpenGL for Wayland whenever enabled
2023-04-03 16:03:08 +04:00
John Preston
5173dfa1ca Workaround for emoji selector in popup menu on Windows. 2023-03-17 14:21:42 +04:00
John Preston
0b87868b1d Respect real title height in WindowHelper on macOS. 2023-02-28 16:18:17 +04:00
John Preston
c4838f5899 Fix native pointers staleness in macOS RpWindow. 2023-02-14 19:39:24 +04:00
Ilya Fedin
a56831e8d0 Fix deprecated declarations warnings on macOS 2023-02-13 16:57:35 +04:00
John Preston
30e7657859 Set system window title text on macOS. 2023-02-03 11:27:19 +04:00
23rd
22ceaae4ed Fixed drawing of long window titles on macOS. 2022-12-04 18:47:00 +03:00
John Preston
a76cdf7edf Allow arbitrary paddings around PopupMenu. 2022-08-17 21:03:06 +03:00
Ilya Fedin
a714fb0070 Refactor all ui_platform_utility functions to accept QWidget
Also let ShowWindowMenu accept the point and remove unused return data
2022-06-13 14:04:17 +04:00
Ilya Fedin
549edbe5c7 Make DisableSystemWindowResize consistent with getting winId on macOS 2022-06-02 14:30:18 +04:00
Ilya Fedin
a812ae65a4 Get rid of private QHighDpi usage 2022-06-02 14:30:18 +04:00
John Preston
f17320171a Allow disabling system resize for a window on macOS. 2022-03-08 18:17:39 +04:00
23rd
7bd7ada3ff Split qt_adapters to separated files. 2022-01-24 19:29:36 +03:00
John Preston
79d2052a83 Use default font in window title on macOS. 2022-01-17 15:04:39 +03:00
23rd
cc79439fee Fixed RpWindow dragging on macOS with Qt 6.2. 2021-10-31 08:58:44 +03:00
John Preston
7b4114d907 Fix RpWindow drag-by-title on macOS with Qt 6.2. 2021-10-26 19:32:24 +04:00
John Preston
674391524b Fix build with Qt 6.2 on macOS. 2021-10-21 19:45:01 +04:00
Ilya Fedin
64e40913df Use new Qt 6 adapters 2021-10-19 19:28:45 +04:00
Ilya Fedin
8e5d35229a Simple replacements for Qt 6
QStringRef -> QStringView
QTextCursor constructor accepts a QTextDocument only
Some headers are moved, so paths are removed
QMatrix -> QTransform
Methods returning qsizetype are wrapped to int()s to allow compiler to deduce the type
2021-10-19 17:06:25 +04:00
John Preston
2d53ef070f Allow to query RpWindow-s frame margins. 2021-09-16 10:26:34 +03:00
John Preston
d452ae8ba6 Rename Ui::Window to Ui::RpWindow. 2021-07-28 16:23:27 +03:00
Ilya Fedin
7a71876124 Add possibility to enable native window frame to Ui::Window 2021-07-28 16:06:17 +03:00
John Preston
8de7b873f9 Remove 'osx' special target code. 2021-07-23 18:52:15 +03:00
Ilya Fedin
43efd9e307 Use custom xdg-shell for shadows on Wayland 2021-06-10 23:39:38 +04:00
John Preston
1c004580eb Fix stay-on-top Ui::Window-s on macOS. 2021-06-08 17:11:02 +04:00
John Preston
e9fcbfcbac Remove 'StartTranslucentPaint'. 2021-05-18 17:04:45 +04:00
John Preston
aeeb13bd02 Send QCloseEvent to custom-closed Ui::Window-s. 2021-05-17 15:19:43 +04:00
John Preston
eb768c8c4b Add IsOverlapped implementation for macOS. 2021-04-20 16:47:09 +04:00
Ilya Fedin
50a0e7da64 Add IsOverlapped method 2021-04-20 15:35:31 +03:00
Ilya Fedin
99089134e3 Add a method to clear transient parent 2021-04-05 10:16:46 +03:00
John Preston
84e0979f47 Fix window title update on macOS. 2021-02-26 21:16:48 +04:00
Ilya Fedin
6500dc9610 Qt-based title widget ported from tdesktop 2021-02-04 18:12:14 +04:00
John Preston
5e3897fcff Improve macOS custom window title. 2020-12-17 15:54:04 +04:00
John Preston
d4c99701b5 Fix deprecation warnings on Qt 5.15.1. 2020-11-04 18:44:45 +03:00
John Preston
b5d6851c97 Fix build with Qt 5.6.2. 2020-08-20 17:57:51 +04:00
John Preston
a1dbca8578 Fix closing Ui::Window from FullScreen on macOS. 2020-08-14 19:58:55 +04:00
John Preston
6735ee93dc Support custom drag area for Ui::Window on macOS. 2020-08-13 13:00:42 +04:00
John Preston
c45b62084c Support hidden custom title on macOS. 2020-08-12 21:00:03 +04:00
John Preston
608b25bd32 Allow custom drag area for Ui::Window. 2020-08-12 17:34:40 +04:00
John Preston
83fada4675 Fix separate panels transparent background.
Regression was introduced with migration to Qt 5.12.8.
2020-05-05 13:51:40 +04:00
John Preston
730816ef52 Move on-top panel one level below on macOS. 2020-03-25 13:23:31 +04:00
John Preston
33ea14969e Use StartTranslucentPaint only on OpenGL widgets on macOS. 2020-01-29 18:54:25 +03:00
John Preston
bbd35238da Don't force floating panel.
In case of StaysOnTop windows it looks like it is floating already.
But in case of manually setting floating here it has a strange bug
with non-activatable always on top tool window (picture-in-picture).

When first time shown it doesn't act as a stays-on-top window, if you
click on another app it is shown above the PiP. Only if you activate
the main window once more the PiP will become stays-on-top window.

This way it works from the first show.
2020-01-29 18:02:17 +03:00
John Preston
0f0fd6a94f Use non-libdispatch queues in Mac App Store build. 2020-01-23 13:13:54 +03:00