URI:
       Add option "--focused" to qmenu-vm - qmenu - manage qubes os via dmenu (drkhsh fork)
  HTML git clone git://git.drkhsh.at/qmenu.git
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit 5eef72f110b9814f989322ab5a321e9cb1c109b0
   DIR parent ca4932a4efd316e46b2df1181b3953f5e59ee584
  HTML Author: sine3o14nnae <3o14@pm.me>
       Date:   Wed, 20 Nov 2019 14:29:40 +0000
       
       Add option "--focused" to qmenu-vm
       
       Diffstat:
         M qmenu-vm                            |     267 ++++++++++++++++---------------
       
       1 file changed, 139 insertions(+), 128 deletions(-)
       ---
   DIR diff --git a/qmenu-vm b/qmenu-vm
       @@ -235,6 +235,131 @@ fdom0_preferences() (
         done
        )
        
       +fmenu_fqvm() {
       +
       + get_qube_label
       +
       + chosefrom=0
       +
       + while [ -n "$chosefrom" ]; do
       +
       +   chosefrom=$(printf "Applications\nAudio input\nBlock devices\nBoot\nBootfrom\nClone\nCommand\nDisk\nFirewall\nKeyboard\nKill\nLogs\nPause\nPCI device\nPreferences\nReboot\nRemove\nServices\nShutdown\nUnpause\nUSB devices" |\
       +     dmenu -l 21 -i -p "$target_qube:" $dmenu_fmc |\
       +     awk '{print $1}')
       +
       +   case $chosefrom in
       +
       +     Applications)
       +
       +       fqvm_applications;;
       +
       +     Audio)
       +
       +       fqvm_devices;;
       +
       +     Block)
       +
       +       fqvm_devices;;
       +
       +     Boot)
       +
       +       qvm-start --skip-if-running "$target_qube"&;;
       +
       +     Bootfrom)
       +
       +       qubes-vm-boot-from-device "$target_qube";;
       +
       +     Clone)
       +
       +       fqvm_clone;;
       +
       +     Command)
       +
       +       fqvm_run;;
       +
       +     Disk)
       +
       +       fqvm_disk;;
       +
       +     Firewall)
       +
       +       fqvm_firewall;;
       +
       +     Keyboard)
       +
       +       fqvm_keyboard;;
       +
       +     Kill)
       +
       +       answer=$(printf "No\nYes" | dmenu -i -p "Kill $target_qube?" $dmenu_fmc)
       +
       +       if [ "$answer" = "Yes" ]; then
       +
       +         qvm-kill "$target_qube"& fi;;
       +
       +     Logs)
       +
       +       fqvm_logs;;
       +
       +     Pause)
       +
       +       answer=$(printf "No\nYes" | dmenu -i -p "Pause $target_qube?" $dmenu_fmc)
       +
       +       if [ "$answer" = "Yes" ]; then
       +
       +         qvm-pause "$target_qube"& fi;;
       +
       +     PCI)
       +
       +       fqvm_pci;;
       +
       +     Preferences)
       +
       +       fqvm_preferences;;
       +
       +     Reboot)
       +
       +       answer=$(printf "No\nYes" |\
       +         dmenu -i -p "Reboot $target_qube?" $dmenu_fmc)
       +
       +       if [ "$answer" = "Yes" ]; then
       +
       +         if qvm-check --running "$target_qube" > /dev/null 2>&1; then
       +
       +           $(qvm-shutdown --wait "$target_qube" && qvm-start "$target_qube")&
       +         fi
       +       fi;;
       +
       +     Remove)
       +
       +       fqvm_remove;;
       +
       +     Services)
       +
       +       fqvm_service;;
       +
       +     Shutdown)
       +
       +       answer=$(printf "No\nYes" |\
       +         dmenu -i -p "Shutdown $target_qube?" $dmenu_fmc)
       +
       +       if [ "$answer" = "Yes" ]; then
       +
       +         qvm-shutdown "$target_qube"& fi;;
       +
       +     Unpause)
       +
       +       qvm-unpause "$target_qube"&;;
       +
       +     USB)
       +
       +       fqvm_devices;;
       +
       +     *)
       +  esac
       +done
       +}
       +
        fqvm_applications() (
        
         option=0
       @@ -1244,11 +1369,23 @@ case $1 in
            shift
            if [ -n "$1" ]; then shift; fi;;
        
       +  --focused)
       +
       +    target_qube=$(xprop -id $(xdotool getwindowfocus) |\
       +      grep -w '^_QUBES_VMNAME(STRING)' |\
       +      cut -d\" -f2)
       +
       +    if [ -z "target_qube" ]; then exit 2; fi
       +
       +    fmenu_fqvm
       +
       +    exit 1;;
       +
          --halted|--paused|--running|--tags=*);;
        
          *)
        
       -    printf "qmenu-vm [OPTION] (--light-theme)\n\n --all\n --halted\n --paused\n --running\n --tags=[TAG]\n\n\nqmenu v1.3\n<https://github.com/sine3o14nnae/qmenu/>\n<https://gitlab.com/sine3o14nnae/qmenu/>\n\n"
       +    printf "qmenu-vm [OPTION] (--light-theme)\n\n --all\n --focused\n --halted\n --paused\n --running\n --tags=[TAG]\n\n\nqmenu v1.3\n<https://github.com/sine3o14nnae/qmenu/>\n<https://gitlab.com/sine3o14nnae/qmenu/>\n\n"
        
            if [ "$1" = "--help" ]; then exit 0; else exit 2; fi
        esac
       @@ -1282,133 +1419,7 @@ while true; do
                fdom0_preferences
              else
        
       -        get_qube_label
       -
       -        chosefrom=0
       -
       -        while [ -n "$chosefrom" ]; do
       -
       -          chosefrom=$(printf "Applications\nAudio input\nBlock devices\nBoot\nBootfrom\nClone\nCommand\nDisk\nFirewall\nKeyboard\nKill\nLogs\nPause\nPCI\nPreferences\nReboot\nRemove\nServices\nShutdown\nUnpause\nUSB" |\
       -            dmenu -l 21 -i -p "$target_qube:" $dmenu_fmc |\
       -            awk '{print $1}')
       -
       -          case $chosefrom in
       -
       -            Applications)
       -
       -              fqvm_applications;;
       -
       -            Audio)
       -
       -              fqvm_devices;;
       -
       -            Block)
       -
       -              fqvm_devices;;
       -
       -            Boot)
       -
       -              qvm-start --skip-if-running "$target_qube"&;;
       -
       -            Bootfrom)
       -
       -              qubes-vm-boot-from-device "$target_qube";;
       -
       -            Clone)
       -
       -              fqvm_clone;;
       -
       -            Command)
       -
       -              fqvm_run;;
       -
       -            Disk)
       -
       -              fqvm_disk;;
       -
       -            Firewall)
       -
       -              fqvm_firewall;;
       -
       -            Keyboard)
       -
       -              fqvm_keyboard;;
       -
       -            Kill)
       -
       -              answer=$(printf "No\nYes" |\
       -                dmenu -i -p "Kill $target_qube?" $dmenu_fmc)
       -
       -              if [ "$answer" = "Yes" ]; then
       -
       -                qvm-kill "$target_qube"& fi;;
       -
       -
       -            Logs)
       -
       -              fqvm_logs;;
       -
       -            Pause)
       -
       -              answer=$(printf "No\nYes" |\
       -                dmenu -i -p "Pause $target_qube?" $dmenu_fmc)
       -
       -              if [ "$answer" = "Yes" ]; then
       -
       -                qvm-pause "$target_qube"& fi;;
       -
       -
       -            PCI)
       -
       -              fqvm_pci;;
       -
       -            Preferences)
       -
       -              fqvm_preferences;;
       -
       -            Reboot)
       -
       -              answer=$(printf "No\nYes" |\
       -                dmenu -i -p "Reboot $target_qube?" $dmenu_fmc)
       -
       -              if [ "$answer" = "Yes" ]; then
       -
       -                if qvm-check --running "$target_qube" > /dev/null 2>&1; then
       -
       -                  $(qvm-shutdown --wait "$target_qube" && qvm-start "$target_qube")&
       -                fi
       -              fi;;
       -
       -
       -            Remove)
       -
       -              fqvm_remove;;
       -
       -            Services)
       -
       -              fqvm_service;;
       -
       -            Shutdown)
       -
       -              answer=$(printf "No\nYes" |\
       -                dmenu -i -p "Shutdown $target_qube?" $dmenu_fmc)
       -
       -              if [ "$answer" = "Yes" ]; then
       -
       -                qvm-shutdown "$target_qube"& fi;;
       -
       -
       -            Unpause)
       -
       -              qvm-unpause "$target_qube"&;;
       -
       -            USB)
       -
       -              fqvm_devices;;
       -
       -            *)
       -          esac
       -        done
       +        fmenu_fqvm
              fi
            fi
          done