kbdd icon indicating copy to clipboard operation
kbdd copied to clipboard

при попытке смены раскладки она сразу же меняется на предыдущую

Open imposeren opened this issue 14 years ago • 7 comments

версия 0.6. При одиночной посылке дбас сообщения раскладка переключается на мгновение, и тут же переключается на предідущую. Что бы она переключилась окончательно приходится посылать несколько сообщений подряд (зажимать хоткей). Вот что говорит дбасмонитор:

один клик: signal sender=:1.72 -> dest=ru.gentoo.KbddService serial=2 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=set_layout uint32 1 signal sender=:1.0 -> dest=(null destination) serial=130 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=layoutChanged uint32 1 signal sender=:1.0 -> dest=(null destination) serial=131 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=layoutChanged uint32 0 signal sender=:1.0 -> dest=(null destination) serial=132 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=layoutNameChanged string "USA" signal sender=:1.0 -> dest=(null destination) serial=133 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=layoutChanged uint32 1 signal sender=:1.0 -> dest=(null destination) serial=134 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=layoutChanged uint32 0 signal sender=:1.0 -> dest=(null destination) serial=135 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=layoutNameChanged string "USA"

"зажатие" хоткея: signal sender=:1.0 -> dest=(null destination) serial=148 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=layoutChanged uint32 1 signal sender=:1.73 -> dest=ru.gentoo.KbddService serial=2 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=set_layout uint32 1 signal sender=:1.74 -> dest=ru.gentoo.KbddService serial=2 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=set_layout uint32 1 signal sender=:1.75 -> dest=ru.gentoo.KbddService serial=2 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=set_layout uint32 1 signal sender=:1.76 -> dest=ru.gentoo.KbddService serial=2 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=set_layout uint32 1 signal sender=:1.77 -> dest=ru.gentoo.KbddService serial=2 path=/ru/gentoo/KbddService; interface=ru.gentoo.kbdd; member=set_layout uint32 1

т.е. при зажатии он просто не пытается переключаься обратно самостоятельно.

вот мой .xbindkeysrc:

eng layout

"dbus-send --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.set_layout uint32:0" Mod1+Shift + 1

ru layout

"dbus-send --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.set_layout uint32:1" Mod1+Shift + 2

ua layout

"dbus-send --dest=ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.set_layout uint32:2" Mod1+Shift + 3

кстати в вики на гитхабе у вас ошибка: там для обоих случаев стоит uint32:1

imposeren avatar Sep 21 '11 08:09 imposeren

tested on version 0.5: Works fine.

imposeren avatar Sep 21 '11 11:09 imposeren

исправлено в 32517d3..d266ea7 в версию выложу позже.

qnikst avatar Sep 23 '11 21:09 qnikst

Что-то я перешел на awesome, и теперь тут такие же грабли. kbdd ставлю *9999, 0.6 тоже пробовал.

imposeren avatar Nov 13 '11 18:11 imposeren

если всё ещё используешь kbdd, то можешь ли проверить работает ли у тебя 9999?

qnikst avatar May 04 '12 19:05 qnikst

Я сейчас вообще без ничего, но это напрягает. Попробую на досуге.

imposeren avatar May 04 '12 20:05 imposeren

ну вроде постваил 9999. Всё равно что бы поменять раскладку, надо зажимать надолго хоткей (т.е. слать много команд подряд). Подозреваю что проблема таже что и была раньше. свитч лейаута тоже так работает: надо зажать, и через секунду начинает прыгать туда-сюда пока не отпустишь.

imposeren avatar May 06 '12 12:05 imposeren

Как запоминалка раскладок для разных окон работает на ура, но вот как свитчер — нет

imposeren avatar May 06 '12 12:05 imposeren