Tentang wmctrl
Dengan wmctrl
(tidak diinstal secara default), kita dapat memperoleh informasi di windows, id mereka, geometri mereka, pid milik mereka dll. Kita juga dapat memindahkan atau mengubah ukuran windows dengan beberapa perintah. Namun, dalam beberapa hal, perilakunya tampaknya tidak logis. Pertanyaan saya adalah tentang memindahkan windows dengan wmctrl
:
Mendapatkan informasi
Ketika saya menjalankan perintah:
wmctrl -lG
Saya mendapatkan (ao) informasi berikut tentang jendela pada gambar di bawah ini:
0x04200085 0 746 443 468 205 jacob-System-Product-Name Niet-opgeslagen document 1 - gedit
Dalam kolom 3-5, informasi geometri memberi tahu kita koordinat x / y dan lebar / tinggi.
Memindahkan / mengubah ukuran jendela
Ketika saya meletakkan koordinat ini dalam wmctrl
perintah untuk memindahkan / mengubah ukuran jendela, itu seharusnya tidak melakukan apa-apa, karena koordinatnya tidak berubah:
wmctrl -ir 0x04200085 -e 0,746,443,468,205
Deviasi
Namun, gambar di bawah ini menunjukkan jendela dipindahkan ke bawah (tepatnya 28px). Saya berasumsi alasannya adalah bahwa perintah wmctrl
pindah jendela dihitung dengan area kerja (layar minus panel tinggi), sedangkan wmctrl -lG
perintah dihitung dengan ukuran layar total . Namun demikian, masih 4px tidak dapat dijelaskan (panelnya 24px tinggi).
Meskipun penyimpangan dapat dikompensasi dalam skrip, fakta bahwa saya tidak mengerti penyebabnya tidak memuaskan, jadi pertanyaannya adalah:
Apa sebenarnya penyebab dari penyimpangan ini?
Memindahkan jendela dengan koordinat yang tepat pada output wmctrl -lG
seharusnya tidak memindahkan jendela, tetapi ia melakukannya