LINUX.ORG.RU

История изменений

Исправление Zubok, (текущая версия) :

Ну, да. В общем, я тут проверил на Evince, который GTK3. Игнорирует он сообщения, отправленные ему напрямую. При этом если фокус имеет, то сообщения через XTEST нормально отрабатывает. Чудится мне, что это политика уже на уровне GTK3 сделана. Возможно, что из каких-то своих соображений безопасности. О таких соображениях, например, в xterm говорится:

       allowSendEvents (class AllowSendEvents)
               Specifies whether or not synthetic key and button events
               (generated using the X protocol SendEvent request) should be
               interpreted or discarded.  The default is “false” meaning they
               are discarded.  Note that allowing such events would create a
               very large security hole, therefore enabling this resource
               forcefully disables the allowXXXOps resources.  The default is
               “false”.

То есть твой последний вариант с отдельным xdotool после поднятия окна наверх единственный рабочий вариант (поднятием окна заведует WM, а не приложение, поэтому оно-то срабатывает).

Исходная версия Zubok, :

Ну, да. В общем, я тут проверил на Evince, который GTK3. Игнорирует он сообщения, отправленные ему напрямую. При этом если фокус имеет, то сообщения через XTEST нормально отрабатывает. Чудится мне, что это политика уже на уровне GTK3 сделана. Возможно, что из каких-то своих соображений безопасности. О таких соображениях, например, в xterm говорится:

       allowSendEvents (class AllowSendEvents)
               Specifies whether or not synthetic key and button events
               (generated using the X protocol SendEvent request) should be
               interpreted or discarded.  The default is “false” meaning they
               are discarded.  Note that allowing such events would create a
               very large security hole, therefore enabling this resource
               forcefully disables the allowXXXOps resources.  The default is
               “false”.