モニターを起きた後にウィンドウの位置変更を停止するには?

モニターを起きた後にウィンドウの位置変更を停止するには?

マルチモニターを備えたノートパソコンがあり、1つはHDMI、もう1つはVGAです。 5分後に画面が暗くなり、10分後に画面が消えるように省電力設定をし、一時停止を無効にしました。コンピュータをロックして10時が過ぎて再びログインすると、開いていたウィンドウがすべてノートパソコンの画面に移動されます!毎回並べ替える必要なく、すべてのウィンドウを所定の位置に維持したいと思います。これには回避策がありますか?

システムメッセージ:

  • アイテム一覧

  • オペレーティングシステム:Kubuntu 18.04 64ビット

  • KDEプラズマバージョン:5.12.6
  • グラフィック: Intel Skylake GT2 [HD グラフィック 520](改訂 07)

ベストアンサー1

一時停止の前後に次の簡単なシェルスクリプトを使用してください。

#!/bin/bash
# Get the coordinates of the active window's
#    top-left corner, and the window's size.
# This can be saved & loaded

getpos(){
    wmctrl -l -G > /dev/shm/winposs
}
setpos(){
    while read -r id g x y w h host app;do
        IFS=" ," read ta tb a b c d <<<$(xprop -id "$id" _NET_FRAME_EXTENTS 2>/dev/null)
        [ -z $d ] && continue
        wmctrl -i -r $id -e "$g,$((x-$d)),$((y-$c)),$((w+$d+$b)),$((h+$c+$a))" 2>/dev/null
    done < /dev/shm/winposs
}

case $1 in
    get) echo getting window positions
         getpos
    ;;
    set) echo setting window positions
         setpos
    ;;
    run) getpos
         shift
         ${@}
         setpos
    ;;
    *) echo "Usage: ${0##*/}"' [get|set|run <command>]'
    ;;
esac

おすすめ記事