aboutsummaryrefslogtreecommitdiff
path: root/tw/services/files/passmenu
diff options
context:
space:
mode:
authorTimo Wilken2024-07-11 17:11:25 +0200
committerTimo Wilken2024-07-11 17:11:25 +0200
commite6f26581bf22e266c5056eddfb264eca2efb6ef4 (patch)
tree08c436f4b5d4fe66bbf9b6a67bb1020568737e93 /tw/services/files/passmenu
parentc2c6421d3f8db9920fe50f07eff226641586f87a (diff)
Wayland-based desktop support
Add a separate home service to configure a Wayland-based desktop instead of an X11 one. Screensharing in Zoom doesn't work unfortunately, but it worked (at least for a while) through OBS. Waybar might need some work to bring it in line with the previous polybar configuration, especially in terms of aesthetics.
Diffstat (limited to 'tw/services/files/passmenu')
-rwxr-xr-xtw/services/files/passmenu12
1 files changed, 10 insertions, 2 deletions
diff --git a/tw/services/files/passmenu b/tw/services/files/passmenu
index 9bf7f7e3..a95fcc7a 100755
--- a/tw/services/files/passmenu
+++ b/tw/services/files/passmenu
@@ -44,7 +44,11 @@ extract_key() {
}
type_stdin() {
- tr -d '\n' | xdotool getactivewindow type --clearmodifiers --file -
+ tr -d '\n' | if [ -n "$WAYLAND_DISPLAY" ]; then
+ wtype -s 50 -
+ else
+ xdotool getactivewindow type --clearmodifiers --file -
+ fi
}
## Command-line arguments
@@ -82,7 +86,11 @@ case "$mode" in
entry=$(pass show "$password_name")
if [ "$mode" = type-all ]; then
echo "$entry" | extract_key username | type_stdin
- xdotool getactivewindow key Tab
+ if [ -n "$WAYLAND_DISPLAY" ]; then
+ wtype -s 50 -k Tab
+ else
+ xdotool getactivewindow key Tab
+ fi
fi
echo "$entry" | head -1 | type_stdin
unset entry;;