Summary: | Сворачивание окна при смене стола в КДЕ | ||
---|---|---|---|
Product: | WINE@Etersoft | Reporter: | Александр Пликус <pav> |
Component: | Окна / фокус / перерисовка | Assignee: | Илья Шпигорь <shpigor> |
Status: | CLOSED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | P4 | CC: | baraka |
Version: | 1.0.10 | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | All | ||
Whiteboard: | |||
Заявки RT: | Связано с: | ||
Дата напоминания: | |||
Bug Depends on: | |||
Bug Blocks: | 3962 |
Description
Александр Пликус
2009-04-14 16:13:39 MSD
Мне кажется что это проблема http://unixforum.org/index.php?s=&showtopic=90639&view=findpost&p=843222 имеет одну причину... Выложил патч. Бага возникла из-за группы патчей на #3768. Там по FocusOut происходит изменение атома NET_WM_STATE окна, чтобы снять topmost. Когда FocusOut связан с переходом на другой рабочий стол, KDE при изменении этого атома решает еще восстановить окно из максимизированного состояния.В Gnome ошибка не проявляется. Решение заключается в добавлении проверки поля detail структуры XFocusChangeEvent. Как выяснилось это поле равно NotifyNonlinear если потеря фокуса связана с переходом на другое X-овое окно. В случае, если FocusOut связан с переходом на другой рабочий стол это поле равно NotifyAncestor. О том, какое значение вообще может принимать это поле при событиях FocusOut, FocusIn написано здесь: http://www.cptec.inpe.br/sx4/sx4man2/g1ae02e/chap10.html |