summaryrefslogtreecommitdiff
path: root/src/helpers/WLClasses.hpp
Commit message (Collapse)AuthorAgeFilesLines
* desktop: cleanup, unify desktop elements as views (#12563)Vaxry2025-12-081-3/+3
|
* input: Add fully configurable trackpad gestures (#11490)Vaxry2025-08-281-13/+0
| | | Adds configurable trackpad gestures
* core: fixup includesvaxerski2025-01-171-3/+3
|
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-3/+3
| | | Cleanup some unneeded includes to speed up compilation
* core: move parts of the animation system to hyprutils (#8868)Maximilian Seidler2025-01-071-1/+0
| | | | | | | | | | | | | * core: change animation manager to use Hyprutils::Animation * config: move animation config to hyprutils animation tree * use g_pAnimationManager->createAnimation and the new PHLANIMVAR template * core: use CGenericAnimatedVariabled::{enabled,setConfig,getStyle} and adapt callbacks * core: adapt animated variable usage (dereference the shared pointer) * misc: bump CMakeLists to hyprutils 0.3.3
* Renderer: rewrite render scheduling (#8683)Vaxry2024-12-221-41/+0
| | | This rewrites renderer scheduling. Occlusion is now unified in a new Pass type.
* internal: Move CMonitor to SP (#8178)Vaxry2024-10-191-10/+10
| | | | | * move monitors to sp * XD
* Core: Move to aquamarine (#6608)Vaxry2024-07-211-6/+8
| | | | | | | | | | | | | | 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-191-1/+1
| | | | | | Moves CRegion, CBox and Vector2D over to hyprutils. Requires hyprutils>=0.1.4
* subcompositor/renderer: fixup handling of subsurfaces below the main oneVaxry2024-06-171-0/+3
| | | | some apps (notably vlc 4) place a subsurface below the main surface (which is kinda cursed) but we have to accomodate for that
* 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-081-9/+4
| | | | | * wayland/core/dmabuf: move to new impl it's the final countdown
* wl-data-device: move to hyprland implVaxry2024-05-141-19/+0
|
* wl_seat: move to hyprland implVaxry2024-05-141-8/+0
|
* Tablet: move to new implVaxry2024-05-091-66/+0
| | | | Ring and strip are not implemented. Will I implement this? God fucking knows. Nobody seems to have that anyways.
* input: Introduce basic hyprland HID classesVaxry2024-05-031-94/+6
| | | | | | 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.
* internal: fix a few asan reported leaks on exit of hyprland (#5852)Tom Englund2024-05-031-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | * 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/+11
|
* virtual-keyboard: destroy on vdestroy eventVaxry2024-05-031-0/+5
|
* virtual-keyboard: move to new implVaxry2024-05-031-13/+16
|
* ime-v2: move to new implVaxry2024-05-011-8/+0
|
* layerSurface: refactor/move to a memory-safe implVaxry2024-04-301-64/+0
| | | | | Makes all the pointers smart to avoid memory issues Refactors layerSurface code to live inside desktop/layersurface
* internal: Window storage rework - part 1 (#5762)Vaxry2024-04-271-2/+2
| | | | | | | | | | | | | | | | | * 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-10/+0
|
* idle-inhibit: move to new implVaxry2024-04-211-12/+0
|
* HookSystem: improve callback safetyVaxry2024-04-201-3/+3
|
* tearing-control: hyprland impl (#5655)Vaxry2024-04-191-11/+0
| | | | | * tearing: hl impl * format
* inhibitor: always destroy on window unmapVaxry2024-04-121-2/+3
| | | | ref #5555
* renderer: Add dimaround layer rule (#4643)TheOnlyMrCat2024-04-111-0/+1
|
* Workspace/core: Refactor workspace storage (#5380)Vaxry2024-04-021-7/+7
| | | | | * refactor workspaces to use ptrs * clang-format
* renderer: allow blurring ls popupsVaxry2024-03-251-0/+2
|
* IME: Refactor and fixup popupsVaxry2024-03-241-20/+0
|
* input: Add options to set tablet's active area (#5199)Khalid2024-03-231-0/+2
| | | | | | | | | * Add options to set tablet's active area * Set tablet's active area in `setTabletConfigs` * Fix formatting for new variables in ConfigManager * Report tablet's physical size with hyprctl
* IME/TI: Fixes and refactoringVaxry2024-03-221-18/+1
| | | | Fixes #5189
* IME: fix crashes with destroyed text-inputsVaxry2024-03-221-0/+4
| | | | ref #5189
* refactor: move window.hpp to desktop/Vaxry2024-03-201-1/+1
|
* IME: Improve handling of text-input and ime-relay (#5147)joshua2024-03-191-6/+3
| | | | | | | | | | | | | * input: Handling multiple surfaces for the text-input-v1 protocol implementation and imporve InputMethodRelay logic fixes #2708 * clang-format * minor style nits --------- Co-authored-by: Vaxry <vaxry@vaxry.net>
* swipe: Touchscreen workspace swipe (#4489)Zach DeCook2024-03-171-0/+1
| | | | | | | | | * Workspace Swipe: Refactor update and end functions * Touch: Implement workspace swipe better ignoring additional fingers and new touches allow gaps-right and gaps-left to be different
* input: Rewritten pointer constraints (#4889)Vaxry2024-03-021-33/+4
| | | | | | | | | | | | | | | | | * rewritten constraints * send pointer enter on activate if not pointer focus * minor cleanup * simulate movement on commit * don't ignore oneshot prop * various fixes * dont send motion on confined * update pos hint on region change
* keybinds: better follow xkb translation stateVaxry2024-03-021-0/+2
| | | | fixes #4908
* animations: Refactor AnimatedVariable (#4911)GartoxFR2024-03-021-10/+10
| | | | | | | | | | | | | | | | | | | | | | | * animation: Refactor AnimatedVariable This commit decomposes the AnimatedVariable class into a base class with the common attribute to all variable types and a templated derived type containing strongly typed info on the type being animated. Access to the typed version is perfomed using the visitor pattern. A utility is provided to build a visitor on the fly using lambdas. Adding a new type to be animated should just be a matter of adding the typed in the list defined by the ANIMABLE_TYPES macro The size of the commit is justified by the API change in the AnimatedVariable class. No more vec(), fl() or col() method but a unified value() method. * animation: Remove visitor pattern * animation: Fix coding style * animation: Fix coding style
* build: fix libc++/clang build (#4886)Anton Samokhvalov2024-02-291-2/+2
|
* xdg: rewrite entire popup implementationVaxry2024-02-291-28/+4
|
* refactor: move a few things to desktop/Vaxry2024-02-291-2/+2
|
* subsurface: Rewrite the subsurface tree (#4877)Vaxry2024-02-291-7/+5
|
* layers: add fully featured animationsVaxry2024-02-281-15/+22
| | | | | | | | Adds configs and layerrules to handle them alas fixes #981 I have cooked
* config: Add option to resolve keybinds by sym instead of code (#4851)Tobias Zimmermann2024-02-271-4/+6
| | | | | | | | | | | | | | This commit adds the new configuration option 'resolve_binds_by_sym' which can be set globally or per-device. It is off by default, which preserves the current behavior. This setting only affects the behavior of keybinds that are defined via key symbols, not those defined via keycode. Binds defined by symbols currently activate if the keycode pressed would generate the specified symbol on the first layout specified in the input section. If enabled, keys pressed on the relevant device will instead match keybinds by the symbols they produce with their current layout. Closes #1881.
* wayland: implement keyboard_shortcuts_inhibit_v1Vaxry2024-02-271-0/+10
| | | | fixes #4568
* input: Map touch devices and tablets bound to an output (#3544)Philip Damianik2024-02-271-0/+2
| | | | | | | | | | | * Map bound touch devices and tablets to an output * Add "[[Auto]]" default option for auto detecting outputs for touch inputs * Bind new monitors to configured touch and tablet devices * Use Monitor::matchesStaticSelector in CConfigManager::getMonitorRuleFor * Use Monitor::matchesStaticSelector in CCompositor::getMonitorFromString
* renderer: add option to blur popupsvaxerski2023-12-251-1/+4
| | | | closes #2134