Felhasználói eszközök

Eszközök a webhelyen


oktatas:linux:grafikus_feluelet:ablak_tavoli_iranyitas

< Grafikus felület

Ablak távoli irányítása

Telepítés

sudo apt install wmctrl
sudo apt install xdotool

Azonosító kiderítése

Kiderítjük az irányítandó ablak azonosító számát:

xwininfo

Az indítás után hasonló kimenetet látunk:

$ xwininfo

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

Most kattintunk a vezérelni kívánt ablakra. A kimenet ehhez hasonló lesz:

xwininfo: Window id: 0x4c8ce2a "051_Linux_GUI_beallitasa.odp - LibreOffice Impress"

  Absolute upper-left X:  314
  Absolute upper-left Y:  87
  Relative upper-left X:  2
  Relative upper-left Y:  23
  Width: 1291
  Height: 905
  Depth: 24
  Visual: 0x21
  Visual Class: TrueColor
  Border width: 0
  Class: InputOutput
  Colormap: 0x20 (installed)
  Bit Gravity State: ForgetGravity
  Window Gravity State: StaticGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: no
  Corners:  +314+87  -1339+87  -1339-88  +314-88
  -geometry 1291x905+314+87

Nekünk ebből az ablak azonosító szükséges.

xdotool key --window 0x4c8ce2a "F1"

Azonosítás kattintás nélkül

Ablakok lekérdezése:

wmctrl -l
wmctrl -lx

Konzolról:

export DISPLAY=:0 ; wmctrl -l

Ablak vezérlése

A kimenetből kiderül, hogy a vezérelni kívánt ablak azonosítója:

  • 0x4200007

Egy ablak aktiválása:

wmctrl -i -a 0x0120002

Ablak rejtése:

wmctrl -i -r 0x3400001 -b toggle,shaded

Ablak mindig alul:

wmctrl -i -r 0x3400001 -b toggle,below

Ablak maximumra:

wmctrl -i -r 0x3400001 -b toggle,maximized_vert,maximized_horz

A vert és horz sorrendje nem mindegy.

Maximalizálás megszüntetése:

wmctrl -i -r 0x3400001 -b remove,maximized_vert,maximized_horz

above - mindig felül fullscreen - teljesképernyő below - mindig alul

A következő értékek állíthatók be:

  • modal
  • sticky
  • maximized_vert
  • maximized_horz
  • shaded
  • skip_taskbar
  • skip_pager
  • hidden
  • fullscreen
  • above
  • below
xdotool windowactivate 0x4200007

Ablak legyen fókuszban (ettől nem kerül felülre):

xdotool windowfocus 0x4200007 

Ablak aktiválása (előtérbe és fókuszt is kap):

xdotool windowactivate 0x4200007

Maximumra váltás:

wmctrl -i -r 0x4200007 -b add,maximized_vert,maximized_horz

Méret és hely

Méret és hely változtatás:

Szintaxis:

xdotool windowmove $WINDOW_ID $X $Y

Példa:

xdotool windowsize 0x4200007 800 600
xdotool windowmove 0x4200007 0 1080

Asztal vezérlése

Hány asztal legyen:

wmctrl -n 2

Minden ablak minimumra:

wmctrl -k on

Az asztalnak billentyű, menü:

xdotool key alt+F1

Billentyűnyomás

Escape nem működik lxterminal ablakban, helyette a kódja: 0xff1b. De például tmuxban már működik.

A kódok listája:

Aktív ablak minimalizálása:

xdotool getactivewindow windowminimize

Ablak címének megváltoztatása:

xdotool set_window --name valami 0x3400001

Ezek után felhasználhatjuk, például:

wmctrl -r gc -b toggle,shaded
xdotool search --name gc windowactivate
xdotool search --name gc windowminimize

Map:

xdotool windowunmap 0x03400001
xdotool windowmap 0x03400001

Név alapján:

xdotool search --name telegram windowmap

A feladatlistán ne látszódjon az ablak:

xprop -id 0x03400001 -f _NET_WM_STATE 32a \
  -set _NET_WM_STATE _NET_WM_STATE_SKIP_TASKBAR
xprop -name <név> -f _NET_WM_STATE 32a \
  -set _NET_WM_STATE _NET_WM_STATE_SKIP_TASKBAR

Ajánlott még: xbindkeys (apt install xbindkeys; man xbindkeys)

Böngésző kezelése

Böngésző aktiválása, új fül nyitása, cím beírása, és Enter nyomása.

Keressük ki a böngészőnk azonosítóját:

wmctrl -l

Művelet:

xdotool windowactivate 0x03400001
xdotool key ctrl+t
xdotool type szit.hu
xdotool key 0xff0d

Az xdotool key 0xff0d helyett írhatunk xdotool key Enter parancsort is. A 0xff0d kód csak LXTerminalban szükséges. Például tmuxban működik az Enter is.

Függelék

Kijelző

export DISPLAY=:0.0
DISPLAY=:0.1 wmctrl -l
oktatas/linux/grafikus_feluelet/ablak_tavoli_iranyitas.txt · Utolsó módosítás: 2019/10/22 18:41 szerkesztette: admin