57 Commits
Author SHA1 Message Date
IkalcoandGitHub d29653cebb hyprctl: add onCreatedEmpty field to workspacerules dispatcher data (#14826)
* hyprctl: add onCreatedEmpty field to workspacerules dispatcher data

* retrigger checks
2026-05-30 10:57:44 +01:00
IkalcoandGitHub 803e81ac39 screenshare: improve destroy logic of objects (#13554) 2026-03-05 14:06:55 +00:00
IkalcoandGitHub c47ae950f4 screencopy: fix minor crash (#13566) 2026-03-04 20:01:37 +00:00
IkalcoandGitHub b4ee4674f9 protocols: implement image-capture-source-v1 and image-copy-capture-v1 (#11709)
Implements the new screencopy protocols
2026-02-22 12:30:11 +00:00
IkalcoandGitHub ea42041f93 protocols: implement pointer-warp-v1 (#11469) 2025-08-29 22:16:40 +02:00
IkalcoandGitHub 2ee5118d7a render: properly release rendered buffers (#9807)
* cleanup eglSync

* properly release buffers in renderer

* add renderingDoneCallback and use it in screencopy

* use static constructor for CEGLSync
2025-04-30 18:35:25 +02:00
IkalcoandGitHub 0e521788bc core: wait for dmabuf readiness (#9806)
* add doOnReadable to event loop manager

* move syncTimeline addWaiter to doOnReadable

* wait on dmabuf buffers to be readable

* don't over synchronize in scanout, also give present feedback on same buffer commit
2025-04-16 01:02:31 +02:00
IkalcoandGitHub 2da4f427ea compositor/surface: fix surface opaque and input regions not being updated (#10055) 2025-04-12 18:58:29 +02:00
IkalcoandGitHub 0dc531c4a7 core: fix crash in data device on shutdown (#9997) 2025-04-09 18:08:42 +02:00
IkalcoandGitHub 0a7e2cb152 pass: remove renderer finalDamage since it's unused (#9996) 2025-04-09 17:50:06 +02:00
IkalcoandGitHub da86db43d4 core: refactor and improve surface commit (#9805)
* make CHLBufferReference not a SP anymore

* copy over release and acquire points in CHLBufferReference

* use CHLBufferReference in screencopy and toplevel export

TODO: use CHLBufferReference in direct scanout properly
      the only problem is the scanout buffer release timing,
      specifically the onBackendRelease mechanism

* cleanup SSurfaceState and surface pending commit tracking

* move surface code from DRMSyncobj, and move acquire to SSurfaceState

* use queue for comitted pending surface states like proto says

"The content update is placed in a queue until it becomes active." - wl_surface::commit

* drop, not release, prev buffer if 2nd buffer wl_surface.attach is sent

"A wl_buffer that has been attached and then replaced by another attach instead of committed will not receive a release event, and is not used by the compositor." - wl_surface::attach
2025-04-07 21:03:27 +02:00
IkalcoandGitHub 5f60fc7d00 renderer: only commit hw cursor stuff if needed (#9654) 2025-03-17 22:06:41 +01:00
IkalcoandGitHub 5cef2f44fe renderer: allow commits when buffer is unchanged but cursor changed (#9648) 2025-03-17 13:06:58 +01:00
IkalcoandGitHub d30cc19d25 renderer: skip ds commits if buffer didn't change (#9556)
this fixes direct scanout glitches by ensuring that attemptDirectScanout doesn't try to recommit the same buffer to AQ
which would cause a pageflip event and the backendRelease to release the same buffer too early
2025-03-08 20:24:22 +01:00
IkalcoandGitHub f1ef724a87 protocols: Ensure protocol dtors are called in ProtocolManager dtor (#9521) 2025-03-03 01:57:49 +01:00
IkalcoandGitHub e6a9cfab91 monitor: preferred mode now tries first 3 modes if preferred fails before erroring (#9246) 2025-01-31 13:23:32 +01:00
IkalcoandGitHub af301312d5 core: fix custom resolutions (#8897) 2024-12-30 18:45:42 +00:00
IkalcoandGitHub cb211d83f6 internal: few small monitor improvements (#8890)
* remove framesToSkip, its not used anymore

* only set drm format when needed after leaving direct scanout

* always set drm damage
2024-12-29 23:19:12 +00:00
IkalcoandGitHub 8d4c18d723 core: refactor/improve monitor mode selection (#8804) 2024-12-28 13:32:04 +00:00
IkalcoandGitHub 5b714f05f8 internal: Make static analysis more happy (#8767)
* make functions used in 1 file static

* fix invalid substr param -1

* give default initializer to borderGradier

* move RASSERT from printf to std::print
2024-12-19 02:56:01 +01:00
IkalcoandGitHub 49e5f9c428 logging: get broader GPUINFO (#8753) 2024-12-18 15:56:53 +01:00
IkalcoandGitHub e2c78c00e5 internal: remove dead code (#8748) 2024-12-17 17:31:27 +01:00
IkalcoandGitHub 6d7544458d cleanup: use doLater instead of adding idle event handlers (#8624) 2024-12-01 17:14:35 +00:00
IkalcoandGitHub 1fb720b62a seat: fix double scrolling in some applications (#8583) 2024-11-26 13:52:43 +00:00
IkalcoandGitHub c4d214c42d monitors: fix vrr breaking monitor disconnect (#8314) 2024-11-01 12:30:26 +00:00
IkalcoandGitHub 9df0f0b66c renderer: fix floating window damage (#8182) 2024-10-21 16:09:14 +01:00
IkalcoandGitHub ce62521883 drm-lease: fix crashes and implementation (#8116) 2024-10-14 11:37:42 +01:00
0d70c44253 screencopy: fix screencopy frames not being cleaned up (#8017)
---------

Co-authored-by: Vaxry <vaxry@vaxry.net>
2024-10-08 01:23:48 +01:00
IkalcoandGitHub e74efd87e5 internal: fix initial cursor warping (#7793) 2024-09-14 23:37:18 +01:00
IkalcoandGitHub a6315b0af4 core: fix crash on monitor removed with gammaControl (#7601)
* fix crash on monitor removed with gammaControl

* Update GammaControl.cpp
2024-08-31 21:55:08 +02:00
IkalcoandGitHub 1ac2fc3f7e protocols: destroy new xdgDialog protocol at right time (#7600) 2024-08-31 21:07:23 +02:00
IkalcoandGitHub 838ed87d6f renderer: minor direct scanout fixes (#7594) 2024-08-31 15:07:52 +02:00
IkalcoandGitHub 98e99cd03d renderer: ensure buffer format on commit (#7556) 2024-08-28 15:07:13 +02:00
IkalcoandGitHub 7dd0f76e5a logs: don't get timezone every time logging (#7550)
its expensive cause cpp dum
2024-08-28 13:19:06 +02:00
IkalcoandGitHub 66586c38f5 keybinds: refactor dispatchers to be better (#7331) 2024-08-24 18:45:53 +02:00
IkalcoandGitHub d85ae306c5 xcursor: handle file errors when loading xcursor themes (#7326) 2024-08-15 12:37:56 +01:00
IkalcoandGitHub 39df1f4dbf cursormgr: fix cursor gsettings on session change (#7295) 2024-08-13 18:27:00 +01:00
IkalcoandGitHub d361fcbd85 config: fix explicit sync option warning (#7293) 2024-08-12 17:16:00 +01:00
IkalcoandGitHub a05da63d85 keybinds: fix NoSymbol keybinds (#7199) 2024-08-07 13:22:19 +02:00
IkalcoandGitHub fa6ee51367 input: fix leds on kb creation (#7206) 2024-08-07 08:44:20 +01:00
IkalcoandGitHub 3b9b5346b8 protocols: Move globalshortcuts impl (#7102)
* move global shortcuts to hyprwayland-scanner

* remove wayland-scanner from deps

* fix the thing
2024-07-30 23:33:56 +02:00
IkalcoandGitHub 60b663e276 protocols: move text-input-v1 to hyprwayland-scanner (#7096)
* move text-input-v1 to hyprwayland-scanner

* vro
2024-07-29 18:14:19 +02:00
IkalcoandGitHub ec672b1ab9 protocols: move screencopy and toplevel export to hyprwayland-scanner (#7065)
* move screencopy and toplevel export to hyprwayland-scanner

* oops
2024-07-27 16:02:02 +01:00
IkalcoandGitHub 3e543d2ce8 core: Properly shutdown wl display (#7018)
* correctly destroy wayland globals

* properly shutdown and cleanup hyprland

* appease the nitpick gods and some comments
2024-07-24 19:07:36 +02:00
IkalcoandGitHub a5f58a3126 layer-shell: validate exclusiveEdge and don't set it as top by default (#7006)
* validate exclusiveEdge and don't set it as top by default

* make sure exclusive edge anchor is within bounds
2024-07-23 20:03:15 +02:00
IkalcoandGitHub e8374e0792 debug: get rid of useless 1s in logs (#6969)
* get rid of 1s in logs lol

* replace WLR with AQ in logs
2024-07-22 18:06:11 +02:00
IkalcoandGitHub b03f41efec xwayland: fix setting title prop (#6809)
* fix setting xwayland title prop

* add window title types
2024-07-08 17:46:42 +02:00
IkalcoandGitHub e58fd3bfb0 meson: fix wlroots-hyprland dep checks (for libliftoff patch to work) (#6736) 2024-07-02 12:14:27 +02:00
IkalcoandGitHub 4778afe2e6 hyprctl: make recv timeout bigger and give error message if it does timeout (#6621) 2024-06-22 00:41:23 +02:00
IkalcoandGitHub 38132ffaf5 renderer: properly software lock cursors with zoom_factor (#6434) 2024-06-12 19:28:52 +02:00
IkalcoandGitHub 73b133d015 hyprctl: Make setcursor better (support XCursor themes, give fail message) (#6097)
* add support for changing to X cursor themes

* use new hyprcursor abi for options

* remove unneeded struct
2024-05-28 23:35:18 +02:00
IkalcoandGitHub 67a5377b41 core: remove wayland sockets on exit (#5959) 2024-05-09 13:39:15 +01:00
IkalcoandGitHub 6a988d9276 core: cleanup environment on exit (#5941) 2024-05-08 18:11:08 +01:00
IkalcoandGitHub 6ccc22194c xkb: check value correctly with xkb_state_layout_index_is_active() (#5925) 2024-05-07 16:07:50 +01:00
IkalcoandGitHub 57e76f91d9 keybinds: fix xkb keybind name to keysym comparison (#5917) 2024-05-07 07:20:06 +01:00
IkalcoandGitHub cddeec47a1 keybinds: make the keybind manager check for session lock (#5894) 2024-05-05 19:28:14 +01:00
IkalcoandGitHub 387127b12a config: added option to choose the default monitor for the cursor (#5847)
* added option to choose the default monitor that the cursor will appear in upon startup

* fix: don't set cursor to default monitor after startup

* refactor to checkDefaultCursorWarp also fix focus
2024-05-03 02:39:19 +01:00