summaryrefslogtreecommitdiff
path: root/src/devices
Commit message (Collapse)AuthorAgeFilesLines
* debug: move to hyprutils' logger (#12673)Vaxry2025-12-181-19/+19
|
* internal: fix clang-tidy "errors" (#11862)UjinT342025-09-291-2/+2
|
* vkeyboard: update cached mods before IME; add share_states = 2 config option ↵JS Deck2025-09-203-3/+13
| | | | (#11720)
* input: fix virtual keyboard keymaps (#11763)usering-around2025-09-192-16/+2
|
* input: support xkb v2 format (#11482)usering-around2025-09-112-14/+49
|
* hyprctl: add an active layout index field in devices (#11531)Levizor2025-09-092-17/+31
|
* input: add per-device scroll-factor (#11241)Vaxry2025-09-021-7/+8
|
* refactor: Use new hyprutils casts (#11377)Kamikadze2025-08-142-8/+8
|
* virtualkeyboard: Add options to skip releasing pressed keys on close and to ↵JS Deck2025-08-045-22/+51
| | | | skip sharing key states (#11214)
* core: use new typed signals from hu (#10853)outfoxxed2025-07-0811-235/+183
|
* refactor: use std::ranges whenever possible (#10584)Kamikadze2025-05-301-1/+1
|
* permissions: add permission management for keyboards (#10367)Vaxry2025-05-181-0/+3
|
* protocols: refactor class member vars (u-z) (#10282)davc0n2025-05-042-23/+23
| | | | | * protocols: refactor class member vars (u-z) * protocols: fix clang format
* protocols: refactor class member vars (core) (#10259)davc0n2025-05-031-1/+1
|
* helpers: refactor class member vars (#10218)davc0n2025-04-301-1/+1
|
* devices: refactor class member vars (#10206)davc0n2025-04-2917-373/+378
|
* config: Refactor class member vars (#10124)davc0n2025-04-201-1/+1
| | | | | * Refactor config classes vars * Fix clang format errors
* InputManager: add config option to disable keybinds per device (#10064)nyx2025-04-171-2/+3
|
* input: fixup mouse check for flipping x / y (#9529)nyx2025-03-062-0/+6
|
* input: add flip_x and flip_y for touchpad (#9481)nyx2025-03-033-4/+12
|
* core: avoid .at() and use [] operator (#9347)Tom Englund2025-02-061-10/+10
| | | avoid .at() where it makes sense and use [] operator in loops.
* core: begin using CFileDescriptor from hyprutils (#9122)Tom Englund2025-01-302-15/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config: make fd use CFileDescriptor make use of the new hyprutils CFileDescriptor instead of manual FD handling. * hyprctl: make fd use CFileDescriptor make use of the new hyprutils CFileDescriptor instead of manual FD handling. * ikeyboard: make fd use CFileDescriptor make use of the new CFileDescriptor instead of manual FD handling, also in sendKeymap remove dead code, it already early returns if keyboard isnt valid, and dont try to close the FD that ikeyboard owns. * core: make SHMFile functions use CFileDescriptor make SHMFile misc functions use CFileDescriptor and its associated usage in dmabuf and keyboard. * core: make explicit sync use CFileDescriptor begin using CFileDescriptor in explicit sync and its timelines and eglsync usage in opengl, there is still a bit left with manual handling that requires future aquamarine change aswell. * eventmgr: make fd and sockets use CFileDescriptor make use of the hyprutils CFileDescriptor instead of manual FD and socket handling and closing. * eventloopmgr: make timerfd use CFileDescriptor make the timerfd use CFileDescriptor instead of manual fd handling * opengl: make gbm fd use CFileDescriptor make the gbm rendernode fd use CFileDescriptor instead of manual fd handling * core: make selection source/offer use CFileDescriptor make data selection source and offers use CFileDescriptor and its associated use in xwm and protocols * protocols: convert protocols fd to CFileDescriptor make most fd handling use CFileDescriptor in protocols * shm: make SHMPool use CfileDescriptor make SHMPool use CFileDescriptor instead of manual fd handling. * opengl: duplicate fd with CFileDescriptor duplicate fenceFD with CFileDescriptor duplicate instead. * xwayland: make sockets and fds use CFileDescriptor instead of manual opening/closing make sockets and fds use CFileDescriptor * keybindmgr: make sockets and fds use CFileDescriptor make sockets and fds use CFileDescriptor instead of manual handling.
* ikeyboard: free xkbSymState in clearManuallyAllocdTom Englund2025-01-281-0/+4
| | | | | asan reported a leak on xkbSymState on destruction, because it wasnt beeing unrefed, was only being unrefed on calls to updateXKBTranslationState.
* core: add LIKELY and UNLIKELY macrosvaxerski2025-01-171-1/+1
| | | | helps the compiler optimize
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-1/+0
| | | Cleanup some unneeded includes to speed up compilation
* input: add warp_back_after_non_mouse_inputVaxry2024-12-152-0/+6
| | | | | | adds cursor:warp_back_after_non_mouse_input fixes #8675
* core: Add clang-tidy (#8664)Vaxry2024-12-072-7/+6
| | | | | This adds a .clang-tidy file for us. It's not a strict requirement to be compliant, but I tuned it to be alright.
* pointer: map devices across all outputs by default (#8352)JManch2024-11-112-2/+3
|
* input: cleanup device naming logicVaxry2024-11-095-9/+1
| | | | ref #8301
* internal: Remove some unused lambda captures (#8218)Honkazel2024-10-241-1/+1
|
* keyboard: update group state on change for the sym resolve stateVaxry2024-10-081-0/+3
| | | | fixes #8038
* keybinds: fixup xkb_states for resolve_by_symvaxerski2024-10-082-2/+13
| | | | fixes #7750
* internal: nuke wlsignal and relatedVaxry2024-09-244-4/+0
| | | | old semi-wrappers for wl_signal, they are no longer used
* input: Fix modifier keys getting stuck if depressed during config reload (#7486)MahouShoujoMivutilde2024-08-231-1/+2
| | | | | | | | | | The problem: If `input:numlock_by_default = true`, depressed mods will get stuck on config reload; this takes effect after some other mod is pressed. This restores 0.41.2 behavior, with the exception that selected keyboard layout is preserved. https://github.com/hyprwm/Hyprland/blob/918d8340afd652b011b937d29d5eea0be08467f5/src/managers/input/InputManager.cpp#L993-L1002
* virtualptr: map to entire screen if no output is providedVaxry2024-07-291-1/+1
| | | | fixes #6749
* virtualptr: allow binding to outputVaxry2024-07-292-1/+4
|
* input: fix keyboard leds with multiple keyboards (#7079)Sungyoon Cho2024-07-282-16/+27
|
* input: Fix `hyprctl switchxkblayout` not actually changing layout (#7070)MahouShoujoMivutilde2024-07-271-0/+7
| | | | | | | | | | | | | | | | | | Emits `SModifiersEvent` in `updateModifiers()` Before the patch: Changing layout with `hyprctl switchxkblayout ...` results in: * active keymap in `hyprctl devices` is changed * no event * no layout is actually changed UNTIL you press one of the mod keys (Alt | Shift | Super | Ctrl) After: * active keymap in `hyprctl devices` changed * activelayout IPC event emitted * layout is changed This fixes https://github.com/hyprwm/Hyprland/issues/7044
* keyboard: update xkb state after key eventVaxry2024-07-251-2/+2
| | | | fixes #6946
* keyboard: properly update keymap state and fd on keymap changesVaxry2024-07-253-25/+56
| | | | | | needed for virtual keyboards that impose their own layouts. fixes #6991
* virtual-pointer: fixup virtual pointer warp eventsVaxry2024-07-221-1/+6
| | | | fixes #6976
* Core: Move to aquamarine (#6608)Vaxry2024-07-2116-739/+736
| | | | | | | | | | | | | | Moves Hyprland from wlroots to aquamarine for the backend. --------- Signed-off-by: Vaxry <vaxry@vaxry.net> Co-authored-by: Mihai Fufezan <mihai@fufexan.net> Co-authored-by: Jan Beich <jbeich@FreeBSD.org> Co-authored-by: vaxerski <vaxerski@users.noreply.github.com> Co-authored-by: UjinT34 <41110182+UjinT34@users.noreply.github.com> Co-authored-by: Tom Englund <tomenglund26@gmail.com> Co-authored-by: Ikalco <73481042+ikalco@users.noreply.github.com> Co-authored-by: diniamo <diniamo53@gmail.com>
* core: Move to hyprutils for MathVaxry2024-06-194-5/+5
| | | | | | Moves CRegion, CBox and Vector2D over to hyprutils. Requires hyprutils>=0.1.4
* core: move to hyprutils for utils (#6385)Vaxry2024-06-111-1/+1
| | | | | | | | | | | | | * 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-082-31/+33
| | | | | * wayland/core/dmabuf: move to new impl it's the final countdown
* input: fix modifier and leds (#6062)Sungyoon Cho2024-05-142-1/+11
|
* Tablet: move to new implVaxry2024-05-093-0/+557
| | | | 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-0911-4/+48
| | | | | | | This moves wlr_cursor to a completely new impl mostly under CPointerManager Also adds beginSimple to OpenGL for simple render passes (e.g. cursor)
* xkb: check value correctly with xkb_state_layout_index_is_active() (#5925)Ikalco2024-05-071-2/+2
|
* internal: new shared_ptr and weak_ptr implementation (#5883)Vaxry2024-05-052-3/+3
| | | | | | | | | | | 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.