Wayland touchpad options + Pinea config

Change-Id: I74994cf455b7dbd79a08ba41fa6a0922bbfaf670

Author: PineaFan <pineafan@clicks.codes>
Change-Id: I8c893e504671c6894d095b12f522c59d34656307
Reviewed-on: https://git.clicks.codes/c/Chimera/NixFiles/+/845
Reviewed-by: Samuel Shuert <coded@clicks.codes>
Tested-by: PineaFan <pineafan@clicks.codes>
diff --git a/modules/home/wayland/default.nix b/modules/home/wayland/default.nix
index be4965a..e6b05df 100644
--- a/modules/home/wayland/default.nix
+++ b/modules/home/wayland/default.nix
@@ -16,6 +16,21 @@
       description = "Enable natural scrolling";
       default = config.chimera.input.mouse.scrolling.natural;
     };
+    input.touchpad.scrolling.factor = lib.mkOption {
+      type = lib.types.float;
+      description = "Scrolling factor";
+      default = 1;
+    };
+    input.touchpad.tapToClick = lib.mkOption {
+      type = lib.types.bool;
+      description = "Enable tap to click";
+      default = true;
+    };
+    input.mouse.sensitivity = lib.mkOption {
+      type = lib.types.float;
+      description = "Mouse sensitivity";
+      default = 1;
+    };
     input.keyboard = {
       layout = lib.mkOption {
         type = lib.types.str;
diff --git a/modules/home/wayland/hyprland/default.nix b/modules/home/wayland/hyprland/default.nix
index f8a96cc..5dee95f 100644
--- a/modules/home/wayland/hyprland/default.nix
+++ b/modules/home/wayland/hyprland/default.nix
@@ -149,11 +149,20 @@
 
             numlock_by_default = true;
 
+            sensitivity = config.chimera.input.mouse.sensitivity;
+
             touchpad = {
               natural_scroll = config.chimera.input.touchpad.scrolling.natural;
+              scroll_factor = config.chimera.input.touchpad.scrolling.factor;
+              clickfinger_behavior = true;
+              tap-to-click = config.chimera.input.touchpad.tapToClick;
             };
           };
 
+          gestures = lib.mkIf config.chimera.input.touchpad.enable {
+            workspace_swipe = true;
+          };
+
           xwayland = {
             force_zero_scaling = true;
           };