Commit graph

1142 commits

Author SHA1 Message Date
John Preston
855f8f7b75 Implement custom scrolling using DirectManipulation.
Use it in Ui::RpWindow. This is an experiment.

Thanks Chromium and Firefox.
2023-06-28 18:55:08 +04:00
John Preston
a6d472ee68 Ignore touchpad touch events, on macOS unreliable. 2023-06-28 15:04:56 +04:00
John Preston
6fe9e08386 Allow custom touch event processing in scroll area. 2023-06-27 21:25:16 +04:00
John Preston
8908c9b5c0 Allow custom wheel event processing in ScrollArea. 2023-06-27 19:40:11 +04:00
John Preston
fc8d4d25de Add a hook into click handler activation. 2023-06-23 20:07:54 +04:00
Ilya Fedin
8a56048801 Ensure Wayland integration instance accessor doesn't leak 2023-06-17 15:05:24 +04:00
John Preston
3749f10e7f Allow getting AnimatedIcon frame rate. 2023-06-15 20:07:58 +04:00
Ilya Fedin
1e89c19a03 Make window check in Wayland integration assert
This function was always requiring a window handle but after latest refactor it would fail silently
2023-06-10 17:07:49 +04:00
John Preston
83cab52cd6 Add access to scrollTop[Value] of PopupMenu. 2023-06-01 19:51:28 +04:00
John Preston
57143bfae1 Allow custom rounding radius for PopupMenu. 2023-06-01 19:51:09 +04:00
Ilya Fedin
784dedac4d Send mouse release event after startSystemMove/startSystemResize 2023-06-01 19:49:19 +04:00
Ilya Fedin
6c216e437d Fix button state after synthesized mouse release 2023-06-01 19:49:19 +04:00
Ilya Fedin
cf906f14bd Store xdg-decoration support with std::optional 2023-05-30 19:01:26 +04:00
Ilya Fedin
627abc6728 C++ify wl_registry 2023-05-30 18:15:19 +04:00
John Preston
ff1d5fce29 Allow tracking isLayerShown in LayerManager. 2023-05-30 17:36:11 +04:00
Ilya Fedin
bf4cb33fab Use new base_linux_wayland_utilities 2023-05-25 21:07:08 +04:00
Ilya Fedin
1893967b4a Destroy Wayland integration before Wayland disconnection 2023-05-25 21:07:08 +04:00
John Preston
a7d5031889 I hope this fixes some focus problems. 2023-05-24 21:01:23 +04:00
John Preston
facdf5a2d8 Fix build with Xcode. 2023-05-19 22:01:59 +04:00
John Preston
a7b6b97bd7 Improve and unify Ui::Show interface. 2023-05-19 20:47:23 +04:00
John Preston
f86d876eff Allow arbitrary window now+delayed activation. 2023-05-19 20:47:19 +04:00
John Preston
303a07f946 Remove unused copy-constructor from BoxShow. 2023-05-17 16:28:26 +04:00
John Preston
f0225406ec Detach mediaview control color from main window. 2023-05-17 15:42:17 +04:00
Ilya Fedin
8c58ebc136 Remove unnecessary private Qt API usage 2023-05-15 12:29:01 +04:00
Ilya Fedin
be0067a8c7 Switch Wayland integration to the new type safe Qt API
This also makes it possible to get a more right seat/serial pair
2023-05-15 12:29:01 +04:00
Ilya Fedin
e8857f5792 Get rid of DESKTOP_APP_DISABLE_DBUS_INTEGRATION 2023-05-14 12:12:19 +04:00
John Preston
b850852221 Simplify working with Ui::Show and toasts. 2023-05-03 22:59:33 +04:00
Ilya Fedin
7c9aa94533 Fix kUseNativeChild with Qt 6.4+ 2023-04-27 16:52:58 +04:00
John Preston
79b6cd347c Make a more robust check of OpenGL init. 2023-04-27 10:57:21 +04:00
John Preston
bfdd116000 Handle emoji myself in custom macOS title. 2023-04-26 22:50:22 +04:00
John Preston
37531086ec Drop all formatting by default in InputField. 2023-04-24 21:25:20 +04:00
John Preston
efb7dc927a Allow AnimatedIcon to be colorized to textColor. 2023-04-24 20:58:56 +04:00
John Preston
56945859e3 Try allowing correct   handling. 2023-04-20 13:36:37 +04:00
Ilya Fedin
9395714537 Avoid event loop being throttled by OpenGL
By default, Qt uses swap interval of 1 what causes the (egl|wgl|glx)SwapBuffers call to wait for vblank. Using swap interval of 0 makes the call to return immediately.
2023-04-08 18:20:07 +04:00
John Preston
aa5cc61b6b Allow DividerLabel to wrap any widget, not just FlatLabel. 2023-04-04 17:06:52 +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
80505c1216 Expose some more box scroll interface parts. 2023-03-30 15:49:37 +04:00
Ilya Fedin
7e5ac77096 Fix devicePixelRatio when applying image rounding 2023-03-30 12:12:03 +04:00
Ilya Fedin
8b0e9ea7b8 Fix the detection of xdg-decoration removal 2023-03-23 12:50:35 +04:00
23rd
db4419eb30 Switched preferred width of multiline menu item to fit icon height. 2023-03-22 21:42:16 +03:00
John Preston
3185e6cd55 Fix possible stack overflow. 2023-03-17 20:46:09 +04:00
John Preston
328b75a311 Some indentation fixes. 2023-03-17 14:21:51 +04:00
John Preston
5173dfa1ca Workaround for emoji selector in popup menu on Windows. 2023-03-17 14:21:42 +04:00
John Preston
bcb56492c4 Allow larger scales on high-dpi screens. 2023-03-15 17:17:15 +04:00
John Preston
dec1cd8cea Make style align constants constexpr. 2023-03-15 13:35:59 +04:00
John Preston
62a62d1fb5 Move MediaPlayerButton style outside of lib_ui. 2023-03-14 17:30:27 +04:00
John Preston
c80df2cdd2 Ensure correct FBO size in QOpenGLWidget. 2023-03-13 15:56:17 +04:00
Ilya Fedin
503320296d Use NVIDIA blacklist on any system using desktop-app's Linux platform code 2023-03-12 23:53:16 +04:00
John Preston
849a840503 Implement BoxShow as a wrapper around long-living *Show. 2023-03-10 18:40:49 +04:00
Ilya Fedin
f3744c4ba3 Use paintGL instead of paintEvent
Hopefully making GL code less crashy by using the respective initialization code
2023-03-09 11:07:18 +04:00