summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* layer: don't close special ws when restoring focus (#6424)MightyPlaza2024-06-111-0/+11
| | | | | modified: src/Compositor.cpp modified: src/Compositor.hpp modified: src/managers/input/InputManager.cpp
* core: move to hyprutils for utils (#6385)Vaxry2024-06-111-1/+4
| | | | | | | | | | | | | * core: move to hyprutils for utils Nix: add hyprutils dep * Meson: add hyprutils dep * flake.lock: update --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* input: fix input regions being ignored on ls-es (#6413)outfoxxed2024-06-111-1/+1
|
* egl: assume implicit modifiers are available for old driversVaxry2024-06-091-3/+3
| | | | fixes #6367
* wayland/core: move to new impl (#6268)Vaxry2024-06-081-107/+75
| | | | | * wayland/core/dmabuf: move to new impl it's the final countdown
* core: free more memory on destruction (#6348)Tom Englund2024-06-061-1/+4
| | | | | | | | | | | | | | | | | | * pointermgr: add destructor to state and free buf if the pointer has a buffer set it wont be freed upon destruction, make asan more happy by adding a destructor and wlr_buf_unlock it on exit. * cursormgr: free the animation timer event source properly free the animation timer event source on destruction. * compositor: free the critsig event source on exit properly free the critical signal event source on exit. * popup: clang format style clang format.
* compositor: change monitor focus when no_warps is enabled (#6260)AERDU2024-05-271-1/+5
| | | fixes focus between monitors when moving using directions with no_warps = true
* xwayland: move to hyprland impl (#6086)Vaxry2024-05-251-14/+14
|
* monitor: avoid UB on undefined auto dirvaxerski2024-05-241-0/+1
| | | | ref #6217
* keybinds: Add option to disable window direction monitor fallback (#6182)shezdy2024-05-221-1/+8
| | | | | * add monitor fallback option * format
* wl-data-device: move to hyprland implVaxry2024-05-141-10/+0
|
* seatmgr: Add a grab classVaxry2024-05-141-0/+5
|
* xdg-shell: move to new implVaxry2024-05-141-24/+27
|
* wl_seat: move to hyprland implVaxry2024-05-141-53/+22
|
* core: fix on-empty workspace being called too often (#6026)Brenno Lemos2024-05-121-2/+2
|
* socket2: fix events being reordered (#5955)underengineering2024-05-101-4/+0
| | | | | | | | | | | | | | | | | | | * socket2: fix events being reordered * remove WL_EVENT_READABLE * initialize eventSource in SClient * add more logs oopsie * replace unordered_map with vector * fix reordering when socket becomes writable before queue is flushed * ignore EAGAIN when accepting connection * use g_pEventManager
* presentation-time: move to new implVaxry2024-05-101-2/+0
|
* config: move various cursor-related vars to cursor:Vaxry2024-05-091-2/+2
|
* core: drop unused protocol implsVaxry2024-05-091-6/+0
| | | | | | xdg_foreign is not used by hyprland wlr_export_dmabuf is old, broken and unused as well
* layer-shell: move to new implVaxry2024-05-091-46/+29
| | | | Also bumps the hw-s dep
* core: remove wayland sockets on exit (#5959)Ikalco2024-05-091-0/+4
|
* Tablet: move to new implVaxry2024-05-091-2/+0
| | | | Ring and strip are not implemented. Will I implement this? God fucking knows. Nobody seems to have that anyways.
* cursor: move to a hyprland implVaxry2024-05-091-66/+32
| | | | | | | This moves wlr_cursor to a completely new impl mostly under CPointerManager Also adds beginSimple to OpenGL for simple render passes (e.g. cursor)
* core: cleanup environment on exit (#5941)Ikalco2024-05-081-0/+24
|
* internal: new shared_ptr and weak_ptr implementation (#5883)Vaxry2024-05-051-5/+5
| | | | | | | | | | | moves std::shared_ptrs to a new implementation Advantages: - you can dereference a weak_ptr directly. This will obviously segfault on a nullptr deref if it's expired. - this is useful to avoid the .lock() hell where we are 100% sure the pointer _should_ be valid. (and if it isn't, it should throw.) - weak_ptrs are still valid while the SP is being destroyed. - reasoning: while an object (e.g. CWindow) is being destroyed, its `weak_ptr self` should be accessible (the sp is still alive, and so is CWindow), but it's not because by stl it's already expired (to prevent resurrection) - this impl solves it differently. w_p is expired, but can still be dereferenced and used. Creating `s_p`s is not possible anymore, though. - this is useful in destructors and callbacks.
* kde-server-decoration: move to new implVaxry2024-05-051-3/+0
|
* input: Introduce basic hyprland HID classesVaxry2024-05-031-4/+1
| | | | | | Implements an intermediary HID class for mice, keyboards and touch devices, removing the old structs from WLClasses.hpp Yes, virtual ones are duplicated a bit, but will likely be de-duped once wlr_input_device is not used anymore.
* output-management: move to new implVaxry2024-05-031-8/+0
|
* internal: fix a few asan reported leaks on exit of hyprland (#5852)Tom Englund2024-05-031-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | * notifications: free cairo images on destruction asan reports a leak on exit if we dont free the image we created in the draw function. add a destructor and free images on exit. * compositor: destroy wlroots types on exit there are a few types not being destroyed on exit and causing a leak on exit in wlroots reported by asan, add those. * cursormgr: ensure we destroy cursor mgr on exit add a destructor and call wlr_xcursor_manager_destroy on the manager on destruction, leak reported by asan. * keybindmgr: free state and keymap add missing keymap_unref on creation, and add a destructor and free the state on exit. leak reported by asan. * skeyboard: add destructor and free state free the state on destruction of keyboard, reported as leak by asan
* virtual-pointer: move to new implVaxry2024-05-031-4/+0
|
* virtual-keyboard: move to new implVaxry2024-05-031-4/+0
|
* ime-v2: move to new implVaxry2024-05-011-4/+0
|
* socket2: fix empty activewindowv2 eventsVaxry2024-05-011-2/+2
| | | | fixes #5827
* session-lock: move to new implVaxry2024-04-301-4/+0
|
* layerSurface: refactor/move to a memory-safe implVaxry2024-04-301-41/+19
| | | | | Makes all the pointers smart to avoid memory issues Refactors layerSurface code to live inside desktop/layersurface
* ext-idle-notify: move to new implVaxry2024-04-291-9/+0
|
* xdg-activation: move to new implVaxry2024-04-291-4/+0
|
* wlr-output-power: move to new implVaxry2024-04-291-4/+0
|
* core: Move /tmp/hypr to $XDG_RUNTIME_DIR/hypr (#5788)Vaxry2024-04-281-16/+28
| | | | | | Moves the directory containing sockets and logs. Also restructures lockfiles a bit. For consumers, check if `$XDG_RUNTIME_DIR/hypr` exists. If so, use it. If not, use the old `/tmp/hypr`.
* compositor: more fs safety around tmp directoriesVaxry2024-04-281-2/+19
| | | | HIS now includes a random bit, and hyprland will bail if /tmp/hypr is not a directory or if /tmp/hypr/his exists
* core: prefer mkdir over create_directory and permissionsVaxry2024-04-281-7/+6
|
* CrashReporter: fix deadlocks by making it mostly async-signal-safe (#5771)virchau132024-04-271-0/+8
| | | | | `CrashReporter::createAndSaveCrash()` is not async-signal-safe, resulting in random deadlocks/double-crashes during Hyprland crashes. This changes the function to be (mostly) async-signal-safe.
* internal: Window storage rework - part 1 (#5762)Vaxry2024-04-271-147/+129
| | | | | | | | | | | | | | | | | * Window storage rework - part 1 * format * remove useless include * fix pch * format * fix crash in dwindle * fix vram leak * prefer .expired() for bool checks
* pointer-constraints: move to new implVaxry2024-04-271-4/+1
|
* text-input-v3: move to new implVaxry2024-04-251-4/+0
|
* config: Default unconfigured monitors to open to the right (#5741)eriedaberrie2024-04-251-19/+23
| | | | | * config: default unconfigured monitors to open to the right * monitor: improve logging for auto positioning
* shortcuts-inhibitor: move to new implVaxry2024-04-251-4/+0
|
* wlr-foreign-toplevel: move to new implVaxry2024-04-251-36/+0
|
* pointer-gestures: move to new implVaxry2024-04-241-2/+0
|
* compositor: properly update workspace in moveWindowToWorkspaceSafeVaxry2024-04-231-4/+2
| | | | fixes #5714