Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 3645 - Главное окно 1С8 остается поверх других окон в Gnome   Make a simular bug
Summary: Главное окно 1С8 остается поверх других окон в Gnome
Status: CLOSED FIXED
Alias: None
Product: WINE@Etersoft
Classification: Продукты (Products)
Component: Окна / фокус / перерисовка (show other bugs)
Version: unspecified
Hardware: PC All
: P4 minor
Target Milestone: ---
Assignee: Илья Шпигорь
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 3024 7469
Blocks: 1217
  Show dependency treegraph
 
In work:
Reported: 2009-03-12 15:36 MSK by Илья Шпигорь
Modified: 2011-07-21 16:04 MSK (History)
2 users (show)

See Also:
Заявки RT:
Связано с:
Дата напоминания:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Илья Шпигорь 2009-03-12 15:36:14 MSK
Воспроизведение:
1) Максимизировать главное окно 1с
2) Переключиться на другое X-овое окно (например консоль)
3) Переключиться на окно 1с
4) Свернуть главное окно 1с
5) Восстановить его
6) Восстановить в обычное не максимизированное состояние
7) Переключиться на другое окно X-ов

В результате X-овый фокус передастся, но окно 1с останется на переднем плане.

Возможно, существуют более простые варианты воспроизведения. Главное - понятно, что проблема есть и, скорее всего, связана с патчами на #3024.
Comment 1 Илья Шпигорь 2009-03-19 10:41:42 MSK
Выложил патч.

Проблема заключалась в том, что после снятия атома NET_WM_STATE_ABOVE в X11DRV_FocusOut происходил вызов X11DRV_ConfigureNotify, в результате чего обновлялся размер X-ового окна. Gnome, похоже, реагировал на изменение окна тем, что оставлял его на вершине стэка окон. В результате окно оставалось на переднем плане.

Патч добавляет вызов X11DRV_DropWindow (т.е. сброс атома NET_WM_STATE_ABOVE) в WinAPI'шную функцию ShowWindow, если окно восстанавливалось или максимизировалось. В результате чего этот атом сбрасывается после всех изменений X-ового окна.

Тестировать надо на 1с8.