LINUX.ORG.RU

GTK приложения открываются не в фокусе

 , ,


0

1

Какая-то напасть случилась - GTK приложения открываются не в фокусе. То есть они появляются под текущими, открытыми окнами. Кто сталкивался?

Появилось пару месяцев назад. Думал и без меня пофиксят. Но уже несколько обновлений кед пришло, а воз и ныне там.

★★★★★

Хм, я думал это Swing (IDEA) глючит. Значит не у одного меня так. Причем фокус в IDE, но она позади всех окон.

Deleted
()
Ответ на: комментарий от Deleted

Хм, я думал это Swing (IDEA) глючит. Значит не у одного меня так. Причем фокус в IDE, но она позади всех окон.

Вот конкретно с IDEA проблема может быть другой. Была пара тредов:

Window Maker и флаг «no_focusable» для sun-awt-X11-XFramePeer

Серое окно при попытке запуска java приложений под тайловым менеджером

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

помнишь ты мне помогал с xcb? пока я это ковырял, временами происходили и окна не в фокусе, причем, зависит это от окружения - де, вм, декоратор.

по сути, проблему я решить не смог до конца, т.е. если ее кто-то из авторов перечисленного и решил, то только путем костыляния, поэтому в конечных программах теперь тоже нужны костыли, под каждый вм и декоратор.

deep-purple ★★★★★
()
Ответ на: комментарий от Zubok

Про IDEA и производные среды (CLion,..) подтверждаю — можно решить на уровне WindowMaker, но это решение, специфичное для конкретного WM.

Семейство настроек suppress.focus.stealing позволяет решить проблему независимым от WM способом, но настройки вступают в силу уже после того, как открыт первый проект.

Я бы добавил, что добиться решения этой проблемы можно только набрав критическую массу в багтрекере. Заводите заявки или голосуйте за уже существующие.

Bass ★★★★★
()
Последнее исправление: Bass (всего исправлений: 1)

проблема может быть в wm_state, а именно _NET_WM_STATE_FOCUSED. Клиент должен обязательно указывать его в True. Если false, то gtk рисует его как backdrop(такой термин, означает позади всех, в терминах ewmh _NET_WM_STATE_BELOW). В kwin эту хрень добавили в мае. https://github.com/KDE/kwin/commit/ce1a5eae156a544da06a9a37ee00b6b55dd13bb3

arrecck ★★★
()
Ответ на: комментарий от deep-purple

Я полагаю, что проблема где-то в KWin, не в GTK, потому что в других WM нет такого.

У меня была проблема примерно такого же характера в IceWM, но с GTK+2. У меня есть вызов окна Emacs по кнопке. Нажал кнопку - окно выскочило, нажал еще раз - свернулось. Внезапно в IceWM появилась почти подобная хрень, как у ТСа: если открыто какое-то GTK-приложение и имеет фокус, то после выскакивания окна Emacs, оно получает фокус на доли секунды, а затем фокус передается к приложению GTK, которое было в фокусе до этого. Ни с каким другими тулкитами (Qt, Xaw и т. д.) такое не проявлялось и проявлялось только в IceWM. Проблему я решил патчингом IceWM (там гонки были) и отсылкой патча в апстрим.

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

IceWM, но с GTK+2

Mate, GTK+2, Qt5, compiz|что-там-у-матэ-дефолт = траблы с отрисовкой размеров виджетов внутри окна (сплиты ездят), траблы с восстановлением позиции окна (скачет на уровень титлбара и вверх и вниз).

deep-purple ★★★★★
()
Последнее исправление: deep-purple (всего исправлений: 2)
Ответ на: комментарий от vostmarhk

Хм. Вроде помогло. Спасибо. Нужно ещё потестировать.

RazrFalcon ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.