Russian Qt Forum
Ноябрь 15, 2024, 11:23
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Пользовательский интерфейс (GUI)
>
Баги на Mac OS X
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Баги на Mac OS X (Прочитано 6018 раз)
serkol
Гость
Баги на Mac OS X
«
:
Ноябрь 23, 2010, 01:57 »
Я заметил 2 бага Qt GUI на Mac OS X. Я открыл темы на bugreports.qt.nokia.com, но похоже что их не рассматривали, и не понятно когда рассмотрят.
Если Вам тоже мешают эти баги, проголосуйте пожалуйста за эти темы на bugreports.qt.nokia.com
1.
В Mac OS X часто используются модальные диалоги, которые вылезают из заголовка главного окна, и остаются прикрепленными к нему. При этом можно перетянуть главное окно вместе с диалогом, если тянуть за заголовок главного окна.
Баг: стоит кликнуть на заголовок главного окна, диалог теряет фокус (а не должен), на нем все становится серым. Если теперь кликать на диалог, все работает, но все выглядит как disabled - все серое.
Обнаружено на Mac OS 10.6.5, Qt 4.7.1 Cocoa
http://bugreports.qt.nokia.com/browse/QTBUG-15474
2.
Колесо прокрутки (scroll wheel на мышке) продолжает крутить виджет после перемещения мыши за пределы виджета. Например QDateEdit (или что угодно другое со скролом) - кликни на него, теперь передвинь курсор мышки за его пределы, например над фоном окна программы (мышь должна быть над чем-то что не скролируется), прокрути колесо прокрутки - QDateEdit меняет дату.
Это особенно сильно достает если пользоваться новой эпловской мышкой Magic Mouse - у нее вся поверхность работает как колесо прокрутки, так что часто возникают неумышленные прокрутки. Эта мышка идет со всеми новыми эпловскими десктопами, так что этот баг заметят многие. Меня это уже достало :-) причем в не-Qt-ишных программах я такого не вижу.
Виджеты должны игнорировать сигналы прокрутки, если курсор мыши находится за их пределами.
http://bugreports.qt.nokia.com/browse/QTBUG-15475
Записан
GreatSnake
Джедай : наставник для всех
Offline
Сообщений: 2921
Re: Баги на Mac OS X
«
Ответ #1 :
Ноябрь 23, 2010, 09:32 »
Цитировать
Виджеты должны игнорировать сигналы прокрутки, если курсор мыши находится за их пределами.
Согласен, но вот только что проверил под виндой - поведение такое же. Правда через RDP, т.к. на работе сижу на линуксе.
Записан
Qt 5.11/4.8.7 (X11/Win)
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Баги на Mac OS X
«
Ответ #2 :
Ноябрь 23, 2010, 11:34 »
Первое баг, а второе - фича дейтэдита и иже с ним, вполне понятная кстати (тк у нее скролл не скролл а допфича на колесико). На нормальных скролл виджетах всё ок.
Лучше запостите баг креатора о сочетании cmd+скролл, который из-за гребаного кинетик скроллинга у мыши зумит текст в креаторе. Added: уже есть
http://bugreports.qt.nokia.com/browse/QTBUG-9803?focusedCommentId=133399
Да, а в каких программах вы дэйтэдит нашли?
«
Последнее редактирование: Ноябрь 23, 2010, 11:44 от Авварон
»
Записан
serkol
Гость
Re: Баги на Mac OS X
«
Ответ #3 :
Ноябрь 24, 2010, 03:02 »
С тем что это фича dateedit - я не согласен. Когда мышь за пределами контрола, он должен забыть о мыше. У меня Magic Mouse, и любое скольжение пальца по ней вызывает скрол. Я тестировал свою программу, и часто в dateedit у меня оказывалась неправильная дата, потому что после ввода даты, при перемещении мыши к другому контролу, палец немного скользил по поверхности мыши (уже за пределами dateedit), и в нем менялась дата.
Так же себя ведет combobox.
Мне кажется что еще в каких-то контролах я видел это. Если не исправят к моменту выхода моей проги, прийдется наверное наследовать от всех таких контролов, и гасить event со скролом. Я уже сделал так с qtabbar - он вообще не должен реагировать на скролл. В родных программах на маке такой контрол не реагирует на скрол. С этой гребаной Magic Mouse вообще проблематично выбрать нужный таб, если он реагирует на скрол. Чуть дрогнул палец, и уже выбран другой таб.
Записан
GreatSnake
Джедай : наставник для всех
Offline
Сообщений: 2921
Re: Баги на Mac OS X
«
Ответ #4 :
Ноябрь 24, 2010, 09:23 »
Цитировать
Когда мышь за пределами контрола, он должен забыть о мыше.
Это уже, имхо, вопрос не Qt, а к MacOS. Нафига туда вообще шлётся событие?
Не думаю, что тролли специально для этого перехватывают события.
Записан
Qt 5.11/4.8.7 (X11/Win)
zenden
Гость
Re: Баги на Mac OS X
«
Ответ #5 :
Ноябрь 24, 2010, 11:52 »
Цитата: GreatSnake от Ноябрь 24, 2010, 09:23
Цитировать
Когда мышь за пределами контрола, он должен забыть о мыше.
Это уже, имхо, вопрос не Qt, а к MacOS. Нафига туда вообще шлётся событие?
Не думаю, что тролли специально для этого перехватывают события.
Qt не использует нативные контролы операционки, и вообще, с точки зрения операционки - в окне, созданном Qt, никаких контролов нет. Поэтому Qt сама рассылает события для дочерних QWidget, по своему собственному велосипедному методу.
Записан
GreatSnake
Джедай : наставник для всех
Offline
Сообщений: 2921
Re: Баги на Mac OS X
«
Ответ #6 :
Ноябрь 24, 2010, 13:18 »
Цитировать
Поэтому Qt сама рассылает события для дочерних QWidget, по своему собственному велосипедному методу.
Чушь несёте. Причём здесь получение события от колеса прокрутки?
Записан
Qt 5.11/4.8.7 (X11/Win)
ufna
Гость
Re: Баги на Mac OS X
«
Ответ #7 :
Ноябрь 24, 2010, 13:36 »
Проверил на семерке - глюка "с прокруткой" нет => это конизьм ОС
Записан
zenden
Гость
Re: Баги на Mac OS X
«
Ответ #8 :
Ноябрь 24, 2010, 19:06 »
Цитата: GreatSnake от Ноябрь 24, 2010, 13:18
Причём здесь получение события от колеса прокрутки?
а при том, что события от мыши приходят напрямую от системы только виджетам, у которых есть "native window" . По-умолчанию они есть только у top-level виджетов.
Записан
GreatSnake
Джедай : наставник для всех
Offline
Сообщений: 2921
Re: Баги на Mac OS X
«
Ответ #9 :
Ноябрь 24, 2010, 19:12 »
Извиняюсь, чушь сморозил я, а не Вы. Не внимательно прочитал:
Цитировать
... например над фоном окна программы (мышь должна быть над чем-то что не скролируется)...
почему-то в голове отложилось, что курсор вне окна был.
Вы абсолютно правы - здесь косяк Qt.
Записан
Qt 5.11/4.8.7 (X11/Win)
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: Баги на Mac OS X
«
Ответ #10 :
Ноябрь 24, 2010, 20:38 »
serkol
Советую поменять мышь, у меня на мэджик маус таких косяков нет:) Может дело конечно в настройках. Единственный косяк - это кинетик скроллинг + зажатый контрол в креаторе
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...