Commit graph

614 commits

Author SHA1 Message Date
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
2e3c15f7a1
wayland/layershell: use bindable implicit size in exclusive zone calc
Fixes #42
2025-05-28 02:07:21 -07:00
5ae8e4901a
core/window: move implicit width/height to bindable properties 2025-05-28 02:07:21 -07:00
cb195d4b2a
launch: look for configs in all XDG config dirs 2025-05-27 16:43:09 -07:00
b898592db7
core: don't show " at " in qml warnings if object name is empty 2025-05-26 17:44:45 -07:00
ee31e5d226
ui/reload: use monospace font for error message 2025-05-26 04:45:54 -07:00
ec433d1a70
core: improve log format for QML errors and warnings 2025-05-26 03:35:52 -07:00
4472b27039
core/reloader: watch new files detected in failed reloads 2025-05-26 02:28:01 -07:00
e931b85464
core/window: add min/max size to FloatingWindow 2025-05-25 23:24:59 -07:00
05ed9ff74c
wayland/screencopy: add constrained implicitSize for ScreencopyView 2025-05-25 21:00:20 -07:00
7390ae28e4
widgets/cliprect: override parent's implicit size instead of wrapper
Adding implicitSize to margin wrappers broke implicit sizing
of ClippingWrapperRectangle.
2025-05-25 21:00:20 -07:00
73e673ea1c
widgets/cliprect: set default background color to white
Matches Rectangle.
2025-05-25 18:02:07 -07:00
abd9a3c5f8
wayland/screencopy: use all dmabuf planes and modifiers in egl image
Fixes black texture on nvidia
2025-05-25 17:47:58 -07:00
bf235d3d4d
wayland/layershell: ensure bridge is nulled on layer destruction
Fixes rare race condition crashes.
2025-05-25 16:11:57 -07:00
2bcd9e07fd
widgets/wrapper: default resizeChild to true
Better reflects how wrapper types are used 99% of the time.
2025-05-25 18:12:09 -07:00
428aec950e
widgets/wrapper: set WrapperRectangle border.width to 0
Works around the implicit 1px border applied to Rectangles
when border is accessed, and works around QTBUG-137166.
2025-05-25 18:12:09 -07:00
23ef14c31d
widgets/wrapper: apply implicit size override on componentComplete 2025-05-25 18:12:03 -07:00
d872ea888d
service/tray: hide missing prop warnings for ToolTip 2025-05-24 03:21:26 -07:00
c4a7d16478
io/process: emit read for data remaining in buffer on exit 2025-05-24 02:39:01 -07:00
89e796cb21
widgets/cliprect: default data property instead of children property 2025-05-24 02:00:55 -07:00
3cf96ecf97
widgets/wrapper: support overriding implicit size 2025-05-24 01:55:55 -07:00
e135de9ec6
widgets/wrapper: use bindable properties everywhere
Also fixes changes to margin not updating geometry
2025-05-24 01:25:35 -07:00
8b5b12b722
core/scriptmodel: update model data after objectProp eq
Updates the values list and sends dataChanged if objectProp
compared equal but the new value is actually different.
2025-05-23 18:03:59 -07:00
2e33ef5b7f
hyprland/ipc: track workspace fullscreen state 2025-05-19 00:01:04 -07:00
edfc4c681c
wayland/layershell: ensure exclusive zone is updated on zone/mode chg 2025-05-18 23:15:52 -07:00
644254d9ec
wayland/toplevel: expose visible outputs 2025-05-18 23:13:17 -07:00
5193426cd7
core/qmljson: add support for synthesized .qml.json files 2025-05-18 20:39:48 -07:00
6026c4ce27
service/mpris: expose dbus service name 2025-05-18 12:33:43 -07:00
c77a12d7bb
ui/reload: add textual fallback for copy and close icons 2025-05-18 12:23:02 -07:00
56b4ef3d21
service/tray: silence compliance warnings
Almost every tray item is missing properties and these
messages pollute the log, masking more useful warnings.
2025-05-18 03:42:22 -07:00
2e905f6447
core/scriptmodel: add objectProp, allowing js objects to be compared 2025-05-17 19:34:57 -07:00
61f00a0442
core/model: return ObjectModel values list directly 2025-05-17 17:03:03 -07:00
6dbc310df4
widgets/cliprect: fix premultiplied alpha blending 2025-05-17 17:03:03 -07:00
8124a63ee4
ui: add native reload popup 2025-05-17 17:03:03 -07:00
5c1d600e84
core/window: fix UAF in createQQuickWindow 2025-05-17 04:01:45 -07:00
4d74851fd0
widgets/wrapper: add WrapperMouseArea 2025-05-17 00:38:09 -07:00
4d7d06bb9b
core/qmlglobal: add clipboard support 2025-05-16 22:16:28 -07:00
325a51c82d
core: add DataDir and StateDir pragmas 2025-05-16 20:54:21 -07:00
a05c0de53b
core/qmlglobal: add dataPath(), statePath() and cachePath() 2025-05-16 20:33:40 -07:00
c1c24c2998
core/qmlglobal: expose dataDir and stateDir 2025-05-16 20:14:59 -07:00
69c7f4fe77
core/qmlglobal: expose cacheDir 2025-05-16 20:01:38 -07:00
fee4942771
io/fileview: add adapter support and JsonAdapter 2025-05-16 20:01:38 -07:00
cb69c2d016
service/upower: do not crash when trying to set power profile w/o ppd 2025-05-15 21:19:27 -07:00
48a56381a6
hyprland/focus_grab: prevent grab object leak on activate 2025-05-14 17:07:14 -07:00
4ae0eae3da
wayland/toplevel: add close() request
Closes #37
2025-05-13 18:59:51 -07:00
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
6a8284dae3
core/window: add implicit size properties to window types 2025-05-12 19:42:46 -07:00
ead9141aca
widgets/wrapper: add distinct top/bottom/left/right margins 2025-05-12 13:53:07 -07:00
ca26210cc4
core/desktopentry: check XDG_DATA_HOME according to base dirs spec
Closes #34
2025-05-11 18:30:31 -07:00
8863bf55ff
core/window: fix null QObject::connect in ProxyWindowBase::setScreen 2025-05-05 22:52:47 -07:00