Dobry den.
Jde to, sam to pouzivam (debian stable, icewm).
Funguje to tak, ze mate jakoby dve(nebo i vice) skupiny klavesnice+mys.
Kazda skupina muze mit "focus" na jine okno. Je to vlastnost X, melo by to fungovat vlastne v jakemkoli WM.
V praci to pouzivam, kdyz prijde kolega neco spoluresit, ze mame kazdy svuj xterm.
Doma to pouzivam s manzelkou, kdy ja si ctu napriklad na jednom z monitoru zpravy a manzelka zatim vyrizuje na jinem monitoru maily.
Objevene problemy: kdyz zavrete okno ke kteremu je prirazena ne Master skupina, pak tato skupina zemre a jiz je nepouzitelna (neni problem ji znovu vytvorit).
Iceweasel(debian firefox) jde plnohodnotne pouzivat pouze s Master skupinou.
Poustim to scriptem(muzete skusit spustit okamzite jedina zavislost je prikaz xinput a novejsi X):
#!/bin/bash
PARAMETR=$1 # bud jedna nebo dve skupiny
KBS1="Chicony 2.4G Multimedia Wireless Kit" #vyplnit dle xinput --list
POS1="Chicony 2.4G Multimedia Wireless Kit"
KB1=$(xinput list | sed -e "s/^.\+[[:blank:]]$KBS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[floating slave]\$\|^.\+[[:blank:]]$KBS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[slave[[:blank:]]\+keyboard[[:blank:]]\+([0-9]\+)\]\$/\1\2/ p ;d")
PO1=$(xinput list | sed -e "s/^.\+[[:blank:]]$POS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[floating slave]\$\|^.\+[[:blank:]]$POS1[[:blank:]]\+id=\([0-9]\+\)[[:blank:]]\+\[slave[[:blank:]]\+pointer[[:blank:]]\+([0-9]\+)\]\$/\1\2/ p ;d")
case $PARAMETR in
(2)
xinput --remove-master "$(xinput list | sed -e "s/^.[[:blank:]]blabla pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")" 2>/dev/null
xinput --create-master blabla
xinput reattach $PO1 "$(xinput list | sed -e "s/^.[[:blank:]]blabla pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
xinput reattach $KB1 "$(xinput list | sed -e "s/^.[[:blank:]]blabla keyboard[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
;;
(1)
xinput --remove-master "$(xinput list | sed -e "s/^.[[:blank:]]blabla pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")" 2>/dev/null
xinput reattach $PO1 "$(xinput list | sed -e "s/^.[[:blank:]]Virtual core pointer[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
xinput reattach $KB1 "$(xinput list | sed -e "s/^.[[:blank:]]Virtual core keyboard[[:blank:]]\+id=\([0-9]\+\).*/\1/ p ;d")"
;;
esac