* 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
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.
* 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
* fix: movewindoworgroup when no window or group is in desired direction, e.g. move window onto empty workspace on next monitor
* fix: movewindoworgroup when no window or group is in desired direction, e.g. move window onto empty workspace on next monitor
* reset flake.nix
* add: changes mentioned in review of #4486
This fixes an observed SigSegV resulting from the cursor surface using
`g_pInputManager` when invoked from the `CInputManager` destructor
Co-authored-by: github-user-name <spam-here@github.com>
Before the change running a `hyprctl` in incomplete `Hyprland`
environment merged error message and prompt for me as:
$ hyprctl activewindow
HYPRLAND_INSTANCE_SIGNATURE not set! (is hyprland running?)$
(note trailing `$` prompt).
After the change the newline is present as expected:
$ hyprctl activewindow
HYPRLAND_INSTANCE_SIGNATURE not set! (is hyprland running?)
$