[Wine-devel] Поведение в терминальных сеансах

Dmitry Novoseletsky =?iso-8859-1?q?aka=5Fdown_=CE=C1_pisem=2Enet?=
Пн Апр 6 01:38:58 MSD 2009


Здравствуйте.

В процессе дописания WM для "рутлес"-режима NXClient for Windows
(nxwin) возникли вопросы, на которые хотелось бы получить ответ с
высот квалификации разработчиков wine на etersoft. Речь опять идет о
стилях окон программ вайна, в основном 1с-овских.
По моей информации, для линуксовых диспетчеров окон (wm) сейчас
существует два подхода установки стилей оформления окна. Первый старый
- стандарты Motif, свойство окна _MOTIF_WM_HINTS и пр. Второй -
современный - стандарты freedesktop.org, свойство _NET_WM_WINDOW_TYPE
и пр. Вайн, по результатам отладки клиента, устанавливает оба
свойства.
Воспользовавшись информацией, которая прошлый раз мне здесь была
выдана, мной был написана установка стилей окон Х-сервера nx-клиента
путем анализа _NET_WM_WINDOW_TYPE. При запуске программ (в т.ч. 1с)
под 1.0.8 стили выставляются практически идеально.
Но начиная с 1.0.9, для окон без заголовка вайном выставляется
_NET_WM_WINDOW_TYPE_DIALOG вместо _NET_WM_WINDOW_TYPE_UTILITY.
Поэтому приходится использовать _MOTIF_WM_HINTS для установки стилей.
Там все нормально.
Возможно ли вернуть новым вайнам старое поведение?
Вопрос не исчерпывается описанной ситуацией, ее-то можно обойти.
Гораздо хуже другое: под вайнами 9,10 в рутлес-режиме при закрытии
любого окна, контролируемого wm nx-клиента (overrideRedirect==0),
возникает примерно 2-х секундная пауза. Это делает работу крайне
некомфортной. И тоже, скорее всего, связанно с некими изменениями
сделанными в 1.0.9.
Причем под родными wm описанных проблем не существует в принципе, что
позволяет сделать вывод о несовместимости вайна "вниз" - библиотеки
nx-сервера построены на базе древнего XFree86.

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

-- 
С уважением,
 Dmitry                          mailto:aka_down на pisem.net


Подробная информация о списке рассылки Wine-devel