aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gui/conf/touchegg.conf18
-rw-r--r--gui/conf/xmonad.hs19
-rw-r--r--gui/touchegg.nix24
-rw-r--r--host/athena.nix1
4 files changed, 53 insertions, 9 deletions
diff --git a/gui/conf/touchegg.conf b/gui/conf/touchegg.conf
new file mode 100644
index 0000000..2afb98b
--- /dev/null
+++ b/gui/conf/touchegg.conf
@@ -0,0 +1,18 @@
+<touchégg>
+
+<application name="All">
+
+<gesture type="DRAG" fingers="3" direction="LEFT">
+ <action type="SEND_KEYS">Control+j</action>
+</gesture>
+
+<gesture type="DRAG" fingers="3" direction="RIGHT">
+ <action type="SEND_KEYS">Control+k</action>
+</gesture>
+
+<gesture type="TAP" fingers="2">
+ <action type="MOUSE_CLICK">BUTTON=3</action>
+</gesture>
+
+</application>
+</touchégg>
diff --git a/gui/conf/xmonad.hs b/gui/conf/xmonad.hs
index b64d561..e937e74 100644
--- a/gui/conf/xmonad.hs
+++ b/gui/conf/xmonad.hs
@@ -149,13 +149,14 @@ commonKeybindings host =
-- window management
, ("M-q" , windows $ S.shift "NSP")
, ("M-S-q" , kill)
+ , ("M-h" , sendMessage Shrink)
+ , ("M-l" , sendMessage Expand)
+ , ("M-<Backspace>" , nextMatch History (return True))
+-- window movement
, ("M-j" , windows S.focusDown)
, ("M-k" , windows S.focusUp)
, ("M-S-j" , windows S.swapDown)
, ("M-S-k" , windows S.swapUp)
- , ("M-h" , sendMessage Shrink)
- , ("M-l" , sendMessage Expand)
- , ("M-<Backspace>" , nextMatch History (return True))
-- window bringer
, ("M-a" , gotoMenuConfig windowBringerDmenuConfig)
, ("M-S-a" , bringMenuConfig windowBringerDmenuConfig)
@@ -167,12 +168,12 @@ commonKeybindings host =
[ (p ++ [k] , windows $ f i) | (i, k) <- zip Main.workspaces ['1' .. '9']
, (p, f) <- [ ("M-" , S.view)
, ("M-S-" , S.shift) ] ] ++
- [ ("M-s p" , toggleWS' ["NSP"])
+ [ ("C-<Backspace>" , toggleWS' ["NSP"])
-- workspace movement
- , ("M-s j" , moveTo Next nonEmptyWS)
- , ("M-s k" , moveTo Prev nonEmptyWS)
- , ("M-S-s j" , shiftTo Next nonEmptyWS >> moveTo Next nonEmptyWS)
- , ("M-S-s k" , shiftTo Prev nonEmptyWS >> moveTo Prev nonEmptyWS)
+ , ("C-j" , moveTo Next nonEmptyWS)
+ , ("C-k" , moveTo Prev nonEmptyWS)
+ , ("C-S-j" , shiftTo Next nonEmptyWS >> moveTo Next nonEmptyWS)
+ , ("C-S-k" , shiftTo Prev nonEmptyWS >> moveTo Prev nonEmptyWS)
-- workspace layout management
, ("M-v" , layoutMenu)
, ("M-s l" , sendMessage NextLayout)
@@ -234,7 +235,7 @@ main = do
$ docks
$ def
{ modMask = mod4Mask -- super key as modifier
- , borderWidth = 3
+ , borderWidth = 6
, normalBorderColor = "#161616"
, focusedBorderColor = "#909636"
, keys = \c -> mkKeymap c (customKeybindings host)
diff --git a/gui/touchegg.nix b/gui/touchegg.nix
new file mode 100644
index 0000000..9b74195
--- /dev/null
+++ b/gui/touchegg.nix
@@ -0,0 +1,24 @@
+{ pkgs, ... }:
+
+{
+ home.packages = [ pkgs.touchegg ];
+
+ home.file.".config/touchegg/touchegg.conf".source = ./conf/touchegg.conf;
+
+ systemd.user.services.touchegg = {
+ Unit = {
+ Description = "Touchégg multitouch gestures";
+ After = [ "graphical-session-pre.target" ];
+ PartOf = [ "graphical-session.target" ];
+ };
+
+ Install = {
+ WantedBy = [ "graphical-session.target" ];
+ };
+
+ Service = {
+ ExecStart = "${pkgs.touchegg}/bin/touchegg";
+ Restart = "on-failure";
+ };
+ };
+}
diff --git a/host/athena.nix b/host/athena.nix
index 3c4bf37..21d6ecf 100644
--- a/host/athena.nix
+++ b/host/athena.nix
@@ -6,6 +6,7 @@
../gui/networkmanager.nix
../gui/stalonetray.nix
../gui/redshift.nix
+ ../gui/touchegg.nix
];
home.packages = with pkgs; [