| Summary: | В менеджере библиотек КОМПАСа не отображается состояние вкл/выкл | ||
|---|---|---|---|
| Product: | [Поддержка проектов] КОМПАС-3D | Reporter: | Виталий Булгаков <bulgakov> |
| Component: | Тестирование | Assignee: | Илья Шпигорь <shpigor> |
| Status: | CLOSED FIXED | QA Contact: | Денис Баранов <baraka> |
| Severity: | major | ||
| Priority: | P4 | CC: | baraka, lav, mais, mx, shpigor |
| Version: | v10 | Keywords: | WINEHQ |
| Target Milestone: | — | ||
| Hardware: | PC | ||
| OS: | All | ||
| Whiteboard: | |||
| Заявки RT: | Связано с: | ||
| Дата напоминания: | |||
| Bug Depends on: | |||
| Bug Blocks: | 753, 4135 | ||
|
Description
Виталий Булгаков
2009-09-02 17:57:17 MSD
В этом менеджере библиотек используется стандартный listview контрол. При включении библиотеки, приложение посылает сообщение с LVM_SETITEMW, в котором указывается новая иконка (т.е. картинка checkbox'а). Ошибка возникла из-за того, что приложение посылает неверную иконку. Запросил тестовый пример у АСКОН'а. В качестве временного решения можно отключить фиксацию окна "менеджер библиотек". После этого бага не воспроизводится. Если после добавления библиотеки переключиться обратно и попробовать добавить ее снова, будет выведено сообщение: "Библиотека "..." уже подключена. Повторное подключение не выполняется." После этого все иконки отрисуются корректно. Вряд ли это ошибка с comctl32 контролами. Тестировал на native comctl32 - воспроизводится. При использовании любого режима открытия библиотеки, кроме "Панель", ошибка не проявляется. Ошибка связана с передачей фокуса. Если есть окно имеющее фокус и его родитель становится невидимым, то фокус должен оставаться у этого окна. В wine в этой же самой ситуации фокус передается окну-родителю, по отношению к скрываемому окну. В Компасе это приводит к тому, что один из BCG контролов получает фокус и совершает какие-то действия. Результатом этих действий становится неверная отрисовка иконок. Для проверки патча сделал тест. Отправил все на winehq. Выложил патч без теста в нашу рассылку. Патч приняли в оригинальный wine. |