summaryrefslogtreecommitdiff
path: root/src/managers/KeybindManager.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* window: expose pseudotiled state and add param to dispatcher (#6583)Przegryw3212024-06-191-5/+11
| | | | | | | * Show pseudotiled state of window in hyprctl clients * Add a window as an optional argument for the pseudo dispatcher * change formatting
* core: avoid bumping hard rlimits, restore on forkVaxry2024-06-191-0/+1
| | | | ref #6584
* keybinds: ignore missing keysyms if no other methods matchVaxry2024-06-171-0/+6
| | | | fixes #6548
* input: add cursor:warp_on_changeworkspace (#6480)memchr2024-06-161-0/+13
| | | | | | | | | * input: add cursor:warp_on_changeworkspace If enabled, warp the cursor to the last focused window on the workspace in the `changeworkspace' dispatcher, except if the cursor is currently on the WLR top layer. Respect persistent warps. * warp_on_change_workspace: check if focused layer is a window.
* keybinds: add custom event dispatcherVaxry2024-06-151-0/+5
| | | | fixes #3439
* core: move to hyprutils for utils (#6385)Vaxry2024-06-111-2/+5
| | | | | | | | | | | | | * 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>
* wayland/core: move to new impl (#6268)Vaxry2024-06-081-12/+12
| | | | | * wayland/core/dmabuf: move to new impl it's the final countdown
* input: add cursor:persistent_warps to maintain relative position within a ↵memchr2024-06-071-12/+37
| | | | | | | | | window (#6338) Allows the cursor to return to its last relative position within a window when the window is refocused. Allows the cursor to retain its relative position within a window when the window is swapped, moved, changed workspace, added to or removed from groups. controlled with cursor:persistent_warps
* build: fix non-pch build (#6337)memchr2024-06-051-0/+1
|
* config: add tag dispacther and window rule (#6211)giskard2024-05-281-8/+25
|
* keybinds: Added new dispatcher (sendshortcut) (#6174)Can2024-05-241-1/+153
|
* internal: save previous workspace before change (#6202)shezdy2024-05-231-11/+11
|
* keybinds: Add option to disable window direction monitor fallback (#6182)shezdy2024-05-221-4/+13
| | | | | * add monitor fallback option * format
* keybinds: add keybind combos and add Left and Right mod distinction. (#5966)Gabriel Ford2024-05-161-16/+68
|
* wl_seat: move to hyprland implVaxry2024-05-141-35/+29
|
* keybinds: fix passVaxry2024-05-121-1/+2
| | | | | | reverts #5967 fixes #6022
* core: fix on-empty workspace being called too often (#6026)Brenno Lemos2024-05-121-2/+2
|
* keybinds: fix release binds in submaps (#6025)shezdy2024-05-121-3/+2
|
* core: remove unused includes and fix warnVaxry2024-05-101-2/+0
|
* keybinds: Fix classic global keybinds(pass dispatcher) (#5967)sub-kek2024-05-091-1/+1
|
* cursor: move to a hyprland implVaxry2024-05-091-23/+22
| | | | | | | This moves wlr_cursor to a completely new impl mostly under CPointerManager Also adds beginSimple to OpenGL for simple render passes (e.g. cursor)
* ipc: add togglegroup, moveintogroup and moveoutofgroup events (#5866)VPavliashvili2024-05-071-0/+4
|
* keybinds: fix xkb keybind name to keysym comparison (#5917)Ikalco2024-05-071-5/+4
|
* keybinds: make the keybind manager check for session lock (#5894)Ikalco2024-05-051-0/+3
|
* internal: new shared_ptr and weak_ptr implementation (#5883)Vaxry2024-05-051-14/+14
| | | | | | | | | | | 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.
* input: Introduce basic hyprland HID classesVaxry2024-05-031-15/+16
| | | | | | 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.
* inputmgr: dont double free on hotplug (#5855)Tom Englund2024-05-031-1/+0
| | | | | | | | | | | | | | * inputmgr: dont double free on hotplug since we are also unrefing the state on hotplugging the keyboard set the state to nullptr so the destructor if case actually catches its been already freed. * keybindgmgr: dont double free on layout switching d5bf153 added keymap unref at the end of updateXKBTranslationState to not leak it when exiting, only it causes updateXKBTranslationState to double free when changing layouts. since its already freed. remove the unneeded extra xkb_keymap_unref.
* internal: fix a few asan reported leaks on exit of hyprland (#5852)Tom Englund2024-05-031-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | * 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
* ime-v2: move to new implVaxry2024-05-011-3/+0
|
* keybinds: check for special workspace equality before switchingVaxry2024-04-301-1/+2
| | | | fixes #5814
* wlr-output-power: move to new implVaxry2024-04-291-0/+2
|
* internal: Window storage rework - part 1 (#5762)Vaxry2024-04-271-104/+110
| | | | | | | | | | | | | | | | | * Window storage rework - part 1 * format * remove useless include * fix pch * format * fix crash in dwindle * fix vram leak * prefer .expired() for bool checks
* shortcuts-inhibitor: move to new implVaxry2024-04-251-7/+4
|
* tokens: add more modes to initial_workspace_trackingVaxry2024-04-241-2/+3
| | | | | | 1 is single-shot, 2 is persistent fixes #5732
* tokens: fix initial workspace token ignoring specialVaxry2024-04-241-1/+4
| | | | ref #5726
* windows: add misc:initial_workspace_trackingVaxry2024-04-231-1/+25
| | | | | | By default enabled, will track the initial opened workspace of a window spawned for 2 minutes or until it's moved to a different workspace. For example: you run a launcher and open an app on workspace 1, but quickly switch to workspace 2. The app will now open on workspace 1 regardless of your switch.
* keybinds: clear repeat source on mouse inputsVaxry2024-04-211-12/+18
| | | | fixes #5671
* HookSystem: improve callback safetyVaxry2024-04-201-1/+1
|
* windows: recalculate monitor after updating windows (#5647)Sungyoon Cho2024-04-191-0/+2
| | | | Recalculate monitor after updating windows, so layout render doesn't get overridden.
* keybindmgr: add optional `silent` suffix to `movewindow`. (#5597)Maarten de Vries2024-04-171-7/+15
| | | | | | With the `silent` suffix, the focus remains on the current position in the layout or the current monitor, instead of following the moved window. When combined with `movewindow mon:X`, this this allows you to get the same behavior as xmonad's `windowToScreen` command.
* keybindmgr: fix workspace_back_and_forth (#5585)go0d1uck2024-04-141-1/+1
|
* workspace: update windows when selector match could change (#5533)Sungyoon Cho2024-04-101-9/+10
| | | | | | | * workspace: update windows when group updates * workspace: update windows when floating toggle * workspace: update windows when stop dragging window by mouse
* keybinds: fix spammy warningVaxry2024-04-041-13/+13
|
* Workspace/core: Refactor workspace storage (#5380)Vaxry2024-04-021-31/+31
| | | | | * refactor workspaces to use ptrs * clang-format
* dispatchers: open special ws on active monitor instead of mouse monitor (#5330)thejch2024-03-301-4/+1
|
* keybinds: add binds:disable_keybind_grabbingVaxry2024-03-291-1/+3
| | | | fixes #5273
* keybinds: Fix exit trigger by moving it to monitor.frame (#5240)dmayle2024-03-251-1/+1
|
* config/workspace: added workspace selectorsVaxry2024-03-191-1/+3
|
* socket2: add pin eventVaxry2024-03-181-0/+3
| | | | fixes #4778
* keybinds: add Dispatchers for "force float" and "force tiling" (non-toggle) ↵djvs2024-03-171-1/+18
| | | | | | | | | (#5137) --------- Co-authored-by: djvs <djvs@users.noreply.github.com>