Commit graph

157 commits

Author SHA1 Message Date
kossLAN
e4d33fa52f
hyprland/ipc: fix focusedWorkspaceChanged connection 2025-10-11 17:04:22 -07:00
outfoxxed
91c9db581e
wayland/screencopy: handle buffer creation failures 2025-07-26 00:48:21 -07:00
outfoxxed
ab096b7e78
wayland/screencopy: reset buffer requests between frames
Prevents buffer requests from collecting a huge set of duplicate
dmabuf and shm formats.
2025-07-26 00:45:31 -07:00
cameron
f90bef2d99 hyprland/workspace: Use name instead of id for activate 2025-07-24 15:40:54 +10:00
outfoxxed
db77c71c21
wayland/layershell: use width over height in horizontal auto exclude
Fixes #135
2025-07-21 02:38:50 -07:00
outfoxxed
4d8055f1cd
build: fix PostReloadHook resolution in LSP 2025-07-15 19:03:27 -07:00
outfoxxed
5706c09e6f
core/window: clean up window interface property proxies 2025-07-15 14:06:26 -07:00
outfoxxed
479ff58f84
wayland/layershell: support opposite-to-exclusion edge margins 2025-07-13 17:08:12 -07:00
outfoxxed
3b4ebc5f16
wayland/layershell: support auto exclusive zone without constraint 2025-07-13 17:02:18 -07:00
outfoxxed
5703fbae21
wayland/lock: handle null window in configure()
Has caused a crash.
2025-07-10 04:01:00 -07:00
outfoxxed
3d594e16dd
core/log: track default logging categories
Fixes a bug in fb37be7 which ignored default logging categories due to
skipping QLoggingRegistry's filter.
2025-07-08 13:49:06 -07:00
outfoxxed
9708d8212a
core/reloader: trigger onPostReload if launched post-reload
This is similar to the check in Reloadable, and fixes a number of hard
to debug issues with Process, IpcHandler, NotificationServer, and
GlobalShortcut not working depending on where you put them in a QML file.
2025-07-04 16:02:14 -07:00
outfoxxed
1d02292fbf
hyprland/ipc: actually set lastIpcObject 2025-06-27 04:09:14 -07:00
outfoxxed
d949f91347
wayland/screencopy: apply output transform to wlr screencopy
Note that this only fixes output copies, and not toplevel copies.
Toplevel copies are harder because a toplevel can be on more than
one output. Hopefully we'll all be using image-copy-capture before
this one comes up.

Fixes #75
2025-06-25 12:34:00 -07:00
outfoxxed
27f97c3283
wayland/toplevel: refactor toplevel output tracking to its own file 2025-06-24 19:38:34 -07:00
outfoxxed
8be18c05ed
hyprland/ipc: expose HyprlandToplevel jsons 2025-06-20 21:31:44 -07:00
outfoxxed
8fc3e1cb6e
docs: include HyprlandToplevel in module file 2025-06-20 19:06:59 -07:00
outfoxxed
c17ea54371
wayland/lock: check for protocol availability before use
Fixes #66
2025-06-20 16:37:22 -07:00
Maeeen
362c8e1b69
hyprland/ipc: expose Hyprland toplevels 2025-06-20 04:09:37 -07:00
outfoxxed
3d3b7f1c05
wayland/lock: avoid creating lock surfaces for the fallback screen
Fixes #61
2025-06-19 14:54:52 -07:00
outfoxxed
20322484b9
wayland/layershell: fix bridge destructor use after free on reload
Under some conditions, Qt will recreate the layer surface. The layer
surface destructor tries to destroy the bridge, but doesn't actually
need to because the bridge is a child of the QWindow owning the layer,
meaning not destroying it is actually completely fine.
2025-06-15 02:52:16 -07:00
outfoxxed
517143adf9
all: fix new lints 2025-06-12 17:01:13 -07:00
outfoxxed
dcd9e3aed8
hyprland/ipc: implement toplevel address association 2025-06-09 14:45:21 -07:00
outfoxxed
aa547bad84
wayland/popupanchor: consider window size in anchor dirty state
With nonstandard edges or gravity, the compositor might not reposition
a popup when its size changes, and its unclear if its supposed to.
2025-05-30 02:55:34 -07:00
outfoxxed
d1df932d60
core/popupanchor: add margins property 2025-05-30 00:33:07 -07:00
outfoxxed
ef077ddd24
core/panelwindow: move Margins to types.hpp 2025-05-30 00:33:00 -07:00
outfoxxed
6d42d26c79
core/popupanchor: add item-relative anchor rect support 2025-05-29 20:07:00 -07:00
outfoxxed
2e3c15f7a1
wayland/layershell: use bindable implicit size in exclusive zone calc
Fixes #42
2025-05-28 02:07:21 -07:00
outfoxxed
05ed9ff74c
wayland/screencopy: add constrained implicitSize for ScreencopyView 2025-05-25 21:00:20 -07:00
outfoxxed
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
outfoxxed
bf235d3d4d
wayland/layershell: ensure bridge is nulled on layer destruction
Fixes rare race condition crashes.
2025-05-25 16:11:57 -07:00
outfoxxed
2e33ef5b7f
hyprland/ipc: track workspace fullscreen state 2025-05-19 00:01:04 -07:00
outfoxxed
edfc4c681c
wayland/layershell: ensure exclusive zone is updated on zone/mode chg 2025-05-18 23:15:52 -07:00
outfoxxed
644254d9ec
wayland/toplevel: expose visible outputs 2025-05-18 23:13:17 -07:00
outfoxxed
48a56381a6
hyprland/focus_grab: prevent grab object leak on activate 2025-05-14 17:07:14 -07:00
outfoxxed
4ae0eae3da
wayland/toplevel: add close() request
Closes #37
2025-05-13 18:59:51 -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
67524f9d8e
wayland/lock: fix protocol errors with Qt 6.9.0
QWaylandWindow::initWindow now forces a null surface commit which is
illegal. This change swaps the surface out for a dummy during
initWindow.
2025-04-26 16:19:07 -07:00
outfoxxed
4ea77a8eb6
wayland: update QWaylandShellSurface impls to use updateExposure()
For Qt 6.9.0
2025-03-27 15:57:57 -07:00
outfoxxed
d6a4ebc742
hyprland/ipc: provide default sorting for workspaces 2025-03-27 14:39:27 -07:00
outfoxxed
392f56c40e
hyprland/ipc: further cleanup + add Hyprland.focusedWorkspace 2025-03-27 00:25:21 -07:00
outfoxxed
8f11d60999
hyprland/ipc: make monitor bindable + fix property errors 2025-03-26 22:14:35 -07:00
outfoxxed
62ccab5d30
hyprland/ipc: expose active and focused properties + activate() 2025-03-26 03:11:36 -07:00
outfoxxed
3b2d84caf0
hyprland/ipc: convert to bindable properties 2025-03-21 02:46:09 -07:00
burein-ita
9534778a78 wayland/screencopy: Add missing include needed for musl
Musl stdlib does not include sys/types.h resulting in undefined dev_t.
2025-02-28 19:37:19 -06:00
outfoxxed
aeb347ba91
wayland/toplevel: add pending state for outputs entered before qscreen init
Fixes a crash in sway, and potentially other compositors, when a
toplevel enters an output before Qt has created a QScreen for it.
2025-01-31 23:54:11 -08:00
outfoxxed
c3ed3b0ee2
hyprland/ipc: fix nullptr workspace read in log line 2025-01-31 23:28:49 -08:00
outfoxxed
fb343ab639
hyprland/ipc: prefer ID based workspace lookups to name based ones
Should (hopefully) reduce race condition issues.
2025-01-27 22:19:28 -08:00
outfoxxed
d3b1a65911
hyprland/ipc: reduce impact of racing workspace queries 2025-01-27 21:13:53 -08:00