Summary: | Некорректная работа выпадающего списка в Само-Тур | ||
---|---|---|---|
Product: | WINE@Etersoft | Reporter: | Andrey Vusik <night> |
Component: | Окна / фокус / перерисовка | Assignee: | Andrey Vusik <night> |
Status: | CLOSED FIXED | QA Contact: | |
Severity: | minor | ||
Priority: | P4 | CC: | baraka, kondratyuk, shpigor, support |
Version: | 1.0.10 | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | All | ||
Whiteboard: | |||
Заявки RT: | Связано с: | ||
Дата напоминания: | |||
Bug Depends on: | |||
Bug Blocks: | 3979, 3589 |
Description
Andrey Vusik
2009-01-30 21:18:46 MSK
Проблема есть, но не смертельна. Мы с ней или похожей ранее столкнулись. Отборка не работает мышью, но работает если выбирать клавиатурой. Делаем фокус на этот элемент и набираем первые буквы города и жмём enter на нужной записи. Spy++ показывает, что окно со списком имеет класс TOutlineCombo. Судя по размерам окна и его положению, выпадающий список этого контрола - TOutlineList Выложил хак. Проблема заключается в том, что значение из TOutlineList заностся в TOutlineBox по WM_LBUTTONUP. При этом список сворачивается по WM_LBUTTONDOWN и сообщение WM_LBUTTONUP уже не ловит. Не понятно почему это работает в windows. С помощью тестов воспроизвести такое же поведение не удалось - и в wine и в windows свернутый список не получает сообщения WM_LBUTTONUP. Решение заключается в посылке дополнительных сообщений WM_LBUTTONUP и WM_RBUTTONUP до обработки соответствующих DOWN. Это решение имеет 2 существенных недостатка: 1) после каждого нажатия правой кнопки мыши список сворачивается 2) перед каждым выбором из списка по нажатию левой кнопки мыши, необходимо произвести выделение какого-нибудь элемента списка правой кнопкой Без тестового примера от разработчиков САМО-Тур более корректно решить ошибку весьма проблематично. Багу не закрываю, но понижаю приоритет. Принято. WINE@Etersoft eter27/eter19 Если это проблема САМО и не ясно почему работает у них, имеет ли смысл им написать об этом?, чтобы они могли исправить в будущих версиях. Понятно, что это не ответит на вопрос как быть старым версиям и почему оно работало в Windows, но наша конечная цель иметь рабочий вариант. Просто обычно они отнекиваются и ссылаются на то, что в windows это работает. А так мы им скопируем ваш пост. Если вам результат не интересен, то предполагаю малую активность со стороны САМО писать им не будем. Необходимо протестировать эту багу еще раз. Надо воспроизвести в какой-нибудь бутылке. (In reply to comment #6) > Необходимо протестировать эту багу еще > раз. Надо воспроизвести в какой-нибудь > бутылке. > Не воспроизводится. 1.0.12-eter5/4 |