qnikst/kbdd

Глюк с получением текущей раскладки

VlaoMao opened this issue · 3 comments

Собственно, проблема. Конкретно мешает использовать программу. Хочется сделать переключение раскладки на одни и те же клавиши, хотел написать скрипт, который будет запрашивать текущую раскладку, однако.
При попытке вызова mdbus2 ru.gentoo.KbddService ответ приходит только после того, как окно несколько раз потеряет/войдёт в фокус. Если же фокус не будет переходить к другому окну, то запрос так и будет висеть.

пока воспрозвести не удалось, но буду разбираться

Не использовал mdbus2, но, может быть, попробуйте с помощью dbus-monitor
Например:

#!/usr/bin/ruby -w
interface = 'ru.gentoo.KbddService'
member = 'layoutChanged'
mon = open %Q{| dbus-monitor --monitor "sender='#{interface}',member='#{member}'"}
loop do
  if mon.gets =~ /layoutChanged/
    case mon.gets[/.\Z/]
    when /0/
      puts "En"
    when /1/
      puts "Uk"
    else
      puts "wtf"
    end
  end
end

Коммит b86c8e4 должен исправлять данную проблему, можете ли Вы попровобать ещё раз на текущем мастере? Переотрывайте баг, если есть проблемы.