Commit graph

44 commits

Author SHA1 Message Date
outfoxxed
3dfb7d8827
core/window: handle graphics context loss 2025-07-15 15:40:10 -07:00
outfoxxed
a2146f6394
core/window: add closed() signal to all window types 2025-07-15 15:39:55 -07:00
outfoxxed
5706c09e6f
core/window: clean up window interface property proxies 2025-07-15 14:06:26 -07:00
outfoxxed
478aa2bda1
core/window: run polish in onExposed instead of polishItems
Fixes hyprland visible regions created before window expose.
2025-07-13 22:27:44 -07:00
outfoxxed
b011cd9d33
core/window: set FloatingWindow default max size to QWINDOWSIZE_MAX
Was previously zero, which will shrink the window to 1px depending on
the display server.
2025-07-13 20:05:53 -07:00
outfoxxed
1e1ba93713
core/window: add manual PanelWindow tester 2025-07-13 18:35:41 -07:00
outfoxxed
3b4ebc5f16
wayland/layershell: support auto exclusive zone without constraint 2025-07-13 17:02:18 -07:00
outfoxxed
bb206e3a19
core/window: run window-level polish along with item polish
Fixes input masks not updating after a reload.
2025-07-12 22:02:33 -07:00
outfoxxed
3cc7ced3a0
core/window: fix QsWindow being null for WlrLayershell 2025-07-04 17:58:55 -07:00
outfoxxed
d9164578a2
core/window: add title property to floating windows 2025-06-15 03:12:51 -07:00
outfoxxed
0499518143
core/qmlglobal: add execDetached functions for spawning processes 2025-06-15 02:52:16 -07:00
outfoxxed
ef077ddd24
core/panelwindow: move Margins to types.hpp 2025-05-30 00:33:00 -07:00
outfoxxed
4a0f6382b0
core/window: expose coordinate mapping functions on QsWindow 2025-05-29 22:42:14 -07:00
outfoxxed
6d42d26c79
core/popupanchor: add item-relative anchor rect support 2025-05-29 20:07:00 -07:00
outfoxxed
adcef7fc30
core/popupwindow: wait for polish to reposition 2025-05-29 16:17:15 -07:00
outfoxxed
b67f92bc13
all: use BINDABLE only with trivial setters
Fixes various bugs caused by the QML engine bypassing setters
when BINDABLE is specified (even if the bindable is const).
Also restructures all properties using BINDABLE to have
a default READ and WRITE to ensure this doesn't happen again.
2025-05-29 16:08:39 -07:00
outfoxxed
5ae8e4901a
core/window: move implicit width/height to bindable properties 2025-05-28 02:07:21 -07:00
outfoxxed
e931b85464
core/window: add min/max size to FloatingWindow 2025-05-25 23:24:59 -07:00
outfoxxed
8124a63ee4
ui: add native reload popup 2025-05-17 17:03:03 -07:00
outfoxxed
5c1d600e84
core/window: fix UAF in createQQuickWindow 2025-05-17 04:01:45 -07:00
outfoxxed
e0cff677a5
wayland/layershell: refactor layer shell surface integration
In addition to the much needed cleanup:

- The bridge/extension type is now directly tied to the QWindow
instead of the WlrLayershell object, and is much smaller.
- Layer requests are now comitted via polish instead of for each
change individually.
2025-05-13 14:56:49 -07:00
outfoxxed
6a8284dae3
core/window: add implicit size properties to window types 2025-05-12 19:42:46 -07:00
outfoxxed
8863bf55ff
core/window: fix null QObject::connect in ProxyWindowBase::setScreen 2025-05-05 22:52:47 -07:00
outfoxxed
c6791cf1f2
core/window: fix screen assignments being completely broken 2025-01-22 20:13:29 -08:00
outfoxxed
b336129c34
core/window: add QsWindow.devicePixelRatio 2025-01-22 03:33:46 -08:00
outfoxxed
6464ead0f1
core/window: move input mask handling + commit scheduling to polish 2025-01-20 01:14:28 -08:00
outfoxxed
f3b7171b25
core/window: allow explicit surface format selection 2025-01-04 03:04:41 -08:00
outfoxxed
611cd76abc
core/proxywindow: connect mScreen's destroy signal in all cases
Fixes edge case crashes when unplugging and replugging monitors.
2024-12-19 03:34:07 -08:00
outfoxxed
8882f7ca50
core/proxywindow: fix ProxiedWindow proxy pointer after reload
Previously was not updated after reload, causing QsWindowAttached to
use the old window pointer after it had been freed.
2024-11-29 00:11:56 -08:00
outfoxxed
b6a79fe99c
core/proxywindow: improve QsWindowAttached robustness
Can now track window parent window changes.
Added tests.
2024-11-27 23:30:38 -08:00
outfoxxed
2571766d3b
all: fix clang 18 lints 2024-11-24 03:36:04 -08:00
outfoxxed
2996e40ff9
core/plugin: rename QuickshellPlugin to QsEnginePlugin
Fixes conflict with the autogenerated qml plugin of the same name.
2024-11-22 18:59:15 -08:00
outfoxxed
a8901fde67
debug/lint: run lints on reload for visible windows 2024-11-22 17:55:45 -08:00
outfoxxed
f0aca2030e
core/proxywindow: notify for width/height changes after connect
Previously the content item would resize but w/h wouldn't be updated.
2024-11-22 15:39:39 -08:00
outfoxxed
dca75b7d6a
service/mpris: clarify trackinfo emit order and use QBindings 2024-11-20 00:52:47 -08:00
outfoxxed
dbaaf55eb6
core/popupwindow: remove parentWindow deprecation message
Was being falsely triggered by lints.
2024-11-19 17:20:53 -08:00
outfoxxed
eb5a5b8b67
debug: run lints after window expose
Ensures items are at their final sizes before checking them,
fixing some false positives.
2024-11-19 15:58:55 -08:00
outfoxxed
6ceee06884
debug: add lint for zero sized items 2024-11-19 15:25:42 -08:00
outfoxxed
0dd19d4a18
core/proxywindow: remove blank frame when destroying window
Removes the blank frame caused by removing the content item from the
window. Fixes an issue with hyprland's window exit animations.
2024-11-12 04:35:42 -08:00
outfoxxed
7ffce72b31
all: optimize build 2024-11-05 04:15:17 -08:00
outfoxxed
1168879d6d
build: only install necessary qml module files 2024-11-04 14:13:37 -08:00
outfoxxed
a931adf033
all: add DEPENDENCIES entries to qml modules
Fixes some qmlls/qmllint issues.
2024-10-31 14:05:02 -07:00
outfoxxed
9980f8587e
window: generate qmltypes 2024-10-31 14:04:58 -07:00
outfoxxed
4e48c6eefb
all: refactor windows code out of core
There are still some links from core to window but its now separate
enough to fix PanelWindow in qml tooling.
2024-10-28 16:18:41 -07:00