mirror of
https://github.com/rwinkhart/artix-install-script.git
synced 2026-08-28 04:46:27 -04:00
Implement script and accompanying window rule to make Konsole act as drop-down, replace Yakuake
This commit is contained in:
Executable
+32
@@ -0,0 +1,32 @@
|
||||
#!/bin/sh
|
||||
|
||||
# set KONQUAKE_ID and KONQUAKE_STATUS
|
||||
[ -f /tmp/konquakerc ] && . /tmp/konquakerc || { KONQUAKE_ID=1; KONQUAKE_STATUS=1; }
|
||||
|
||||
# if KONQUAKE_ID is associated with konsole
|
||||
if [ "$(ps -p $KONQUAKE_ID -o comm=)" = 'konsole' ]; then
|
||||
# toggle konsole window
|
||||
if [ $KONQUAKE_STATUS -eq 0 ]; then
|
||||
# set custom window title (to match window rule)
|
||||
dbus-send --type=method_call --dest=org.kde.konsole-$KONQUAKE_ID /konsole/MainWindow_1 org.qtproject.Qt.QWidget.setWindowTitle string:konquake\ session
|
||||
# show konsole window
|
||||
dbus-send --type=method_call --dest=org.kde.konsole-$KONQUAKE_ID /konsole/MainWindow_1 org.qtproject.Qt.QWidget.show
|
||||
KONQUAKE_STATUS=1
|
||||
else
|
||||
# hide konsole window
|
||||
dbus-send --type=method_call --dest=org.kde.konsole-$KONQUAKE_ID /konsole/MainWindow_1 org.qtproject.Qt.QWidget.hide
|
||||
KONQUAKE_STATUS=0
|
||||
fi
|
||||
else
|
||||
konsole -e zsh -c "printf $'\033]30;'konquake\ session$'\007' && exec zsh" &
|
||||
# update KONQUAKE_ID for newest konsole instance
|
||||
KONQUAKE_ID=$!
|
||||
sleep .2
|
||||
# hide konsole window
|
||||
dbus-send --type=method_call --dest=org.kde.konsole-$KONQUAKE_ID /konsole/MainWindow_1 org.qtproject.Qt.QWidget.hide
|
||||
# show konsole window
|
||||
dbus-send --type=method_call --dest=org.kde.konsole-$KONQUAKE_ID /konsole/MainWindow_1 org.qtproject.Qt.QWidget.show
|
||||
fi
|
||||
|
||||
# update /tmp/konquakerc with status information
|
||||
printf "export KONQUAKE_ID=$KONQUAKE_ID\nexport KONQUAKE_STATUS=$KONQUAKE_STATUS" > /tmp/konquakerc
|
||||
Reference in New Issue
Block a user