summaryrefslogtreecommitdiff
path: root/src/managers/input/Swipe.cpp
Commit message (Collapse)AuthorAgeFilesLines
* swipe: Touchscreen workspace swipe (#4489)Zach DeCook2024-03-171-4/+14
| | | | | | | | | * 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
* config: improve config value infrastructureVaxry2024-03-031-56/+57
|
* animations: Refactor AnimatedVariable (#4911)GartoxFR2024-03-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | * 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
* Migrate the config to hyprlang (#4656)Vaxry2024-02-181-58/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Migrate to hyprlang * pop up errors * fix swapped args * Meson & Nix: build with hyprlang * CI: add hyprlang to setup action * add infra for plugin stuff * fix hyprctl getoption * fix hyprctl getoption with json * format * fix post parse logic * fix autogen config * oops missed exec-once * fmt * fix ws rules * require 0.3.0 for hyprlang * nix: flaek * minor type fixes * fix cfg usages in swipe * use cvarlist for ws rules * fix throw in addPluginConfigVar * Nix: update hyprlang * minor fixes * fix disableLogs * mention hyprlang docs * bump hyprlang dep in cmake * Meson: bump min hyprlang version Nix: update hyprlang * minor fix * Nix: update meson patch --------- Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
* swipe: Prevent hiding current workspace when swiping (#4417)scorpion-262024-01-111-2/+2
| | | | | | | When workspace_swipe_use_r is enabled, swiping from WS 1 to a non-empty WS 2 would hide WS 1 (Similar effect to issue #4076). This is caused by a faulty check which doesn't consider, that workspaceIDLeft could be the current workspace. This bug is only a problem for r, because m wraps around on WS 1 m-1, whereas r stays on WS 1.
* style/ci: apply clang-format and verify it in ci (#4039)François Conzelmann2023-12-061-32/+20
| | | | | * style: apply clang-format * ci: add new clang-format job to CI
* general: add workspace gaps (#3877)end-42023-11-191-35/+50
| | | | | | | | | | | | | | | | | | | | | * anims: workspace gap * anims: ws gaps: on swipe end * anims: ws gaps: add missing parentheses * format * refractor * Update Swipe.cpp * format * fix swipe to right * ws gaps: move animations:workspace_gap to general:gaps_workspace * ws gaps: general:gaps_workspace -> general:gaps_workspaces
* internal: replace INT_MAX with WORKSPACE_INVALIDVaxry2023-11-121-1/+1
|
* cleanup: Replace find() with C++20 starts_with(), ends_with() and contains() ↵Philip Damianik2023-10-151-2/+2
| | | | | | | (#3572) * Replace find() with C++20 starts_with() and ends_with() * Replace find() with C++20 contains()
* fix: inconsistent behaviour where last workspace was not saved (#3261)memchr2023-09-111-0/+1
|
* internal: Remove all `.c_str()` calls when using `std::vformat` (#3198)Philip Damianik2023-09-061-1/+1
| | | Signed-off-by: pdamianik <39028343+pdamianik@users.noreply.github.com>
* internal: Formatter rework (#3186)Vaxry2023-09-061-1/+1
|
* gestures: Swipe direction lock (#3052)end-42023-08-231-8/+18
|
* animations: add slidefade and slidefadevert styles for workspaces (#3008)end-42023-08-171-2/+4
| | | | | | | | | | | | | | | * add slidefade and slidefadevert animations * fix swiping for slidefadevert * rename minPerc to movePerc for slidefade anim styles * change default slidefade percentage to 100% * remove useless comments * findlastof + 1 * debug logging for slidefade/slidefadevert percentage
* swipe: fix mixup of r/mvaxerski2023-07-041-2/+2
|
* gestures: add workspace_swipe_use_rvaxerski2023-07-011-4/+6
|
* internal: workspace manip handling reworkvaxerski2023-04-141-4/+4
|
* Fix swiping onto a new workspace with multiple monitors. (#1971)Andrew Pritchard2023-04-071-4/+16
| | | | | | | | | | | | | | | | | | | | | The previous code could run into issues into the following circumstances: * The focused monitor is on its rightmost workspace with ID `i`. * Another monitor has a workspace with ID `i+1`. * `workspace_swipe_create_new` is enabled. Then, swiping rightwards attempts to target a new workspace with ID `i+1`: completing the swipe gesture unintentionally focuses that workspace on whichever monitor it's already on while leaving the active monitor in a broken state where it shows no windows but creates new windows on the workspace it was previously on; and cancelling the swipe gesture shifts the entire workspace `i+1` to the right by the width of the active monitor. By choosing an ID that doesn't exist, this problematic behavior is avoided. More specifically, it's the smallest ID greater than any existing workspace's ID, because otherwise the new workspace that was seemingly just created to the right of the rightmost workspace could end up somewhere in the middle of the workspace order.
* swipe: block on locked sessionvaxerski2023-04-071-1/+1
|
* remove old comment and fixup lsl var namevaxerski2023-01-221-2/+2
|
* Normalize color storagevaxerski2023-01-051-8/+8
| | | | | | Colors are now normalized to 0 - 1 values instead of 0 - 255 causes calculations to be simpler and generally cleans up the codebase.
* added workspace_swipe_numberedvaxerski2022-12-251-34/+59
|
* Added clang format (#1239)Vaxry2022-12-161-37/+44
| | | * clang-format stuff and format files
* Added handling more special workspacesvaxerski2022-11-271-1/+1
|
* Fix swiping on the first workspace going to the last (#1067)CactiChameleon92022-11-211-1/+4
|
* added workspace_swipe_forevervaxerski2022-11-031-0/+12
|
* fix swipe on 2 detached workspacesvaxerski2022-11-021-1/+1
|
* fix swipe with fullscreen maximizedvaxerski2022-10-201-1/+1
|
* minor swipe on new fixesvaxerski2022-10-201-0/+4
|
* minor fix for swipes from empty workspacesvaxerski2022-10-201-1/+1
|
* fix minor anim issue with swipe newvaxerski2022-10-201-1/+8
|
* added swipe create newvaxerski2022-10-201-10/+30
|
* make swipe respect slidevertvaxerski2022-10-071-9/+34
|
* fullscreen animation en-nice-mentvaxerski2022-09-191-0/+19
|
* minor swipe fixesvaxerski2022-09-171-2/+4
|
* minor code styling fixesvaxerski2022-09-091-2/+0
|
* fix styling in const ptrsvaxerski2022-08-271-1/+1
|
* fix typo in swipe alpha controlvaxerski2022-08-191-2/+2
|
* fix swipe on workspace style fadevaxerski2022-08-191-0/+4
|
* damage monitor on workspace swipe endvaxerski2022-08-161-0/+2
|
* clean up unconstraining logicvaxerski2022-08-091-2/+2
|
* fix swipe not cancelling constraintsvaxerski2022-07-261-0/+4
|
* fix swiping with one workspace on monitorvaxerski2022-07-251-0/+10
|
* fix some swipe issuesvaxerski2022-07-251-11/+21
|
* minor changes to swipesvaxerski2022-07-221-8/+6
|
* minor changes to swipesvaxerski2022-07-221-0/+4
|
* minor changes to swipesvaxerski2022-07-221-4/+0
|
* added workspace swipe fingersvaxerski2022-07-191-1/+2
|
* fix workspace swipes mistakevaxerski2022-07-191-3/+8
|
* fix possible swipe crashvaxerski2022-07-071-0/+3
|