Название: Qt 4.4.3, ерунда с pos(), господа Отправлено: Alex Custov от Февраль 20, 2009, 16:32 Привет. Постестируйте пожалуйста из пакета Qt примеров пример shapedclock. Это часы без оконного заголовка, но которые можно таскать мышкой. Там выясняется, что (по крайней мере у меня) 100% есть баг с pos(). Я добавил туда пару дебуг строк:
Код: void ShapedClock::mousePressEvent(QMouseEvent *event) Вот что он выводит когда я пытаюсь зацепить мышью окно и подвинуть: Код: klik QPoint(639,525) т.е. первоначально pos() == QPoint(0, 0)!, собственно поэтому при первоначальном движении окна эти часы прыгают в верхний левый угол. У кого воспроизводится? У меня Qt 4.4.3, Debian Lenny. P.S Если не воспроизводится, поставьте в настройках своего WM чтобы он принудительно центрировал новые окна, и опять потестите. Ввозможно Qt не обновляет pos() после того, как WM принудительно подвинул окно. Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: Alex Custov от Февраль 20, 2009, 17:17 Проверил в 3.3.8 - работает без багов, всё ок
добавление нашёл такое же за 2007 год - https://bugzilla.redhat.com/show_bug.cgi?id=426354 , прикол Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: SABROG от Февраль 20, 2009, 17:27 Я так понял этот баг есть только в *nix'ах при включеном центрировании окон?
Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: Alex Custov от Февраль 20, 2009, 17:35 попробовал разные методы расположения окон в KWin - без разницы, баг есть при любом раскладе.
Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: SABROG от Февраль 20, 2009, 17:42 В виндах такого нет:
Код: click QPoint(54,22) Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: lit-uriy от Февраль 20, 2009, 17:44 у меня на виндовозе нет такого эфекта.
(Qt 4.4.3, Win2kSP4) Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: Alex Custov от Февраль 20, 2009, 17:57 На винде это хорошо, но мне бы в Linux.
добавление попробовал openbox вместо kwin - тоже самое. Самое интересное, что самый первый вызов XGetWindowAttributes() в mousePressEvent() отдаёт координаты (0,0), хотя окно находится где-то в середине экрана, явно не в (0,0): Код: static bool fix(QWidget *w) Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: SABROG от Февраль 20, 2009, 18:20 Возможно косяк закрался где-то в самом X-сервере. Даже тут говорится, что не все ладно с ним http://doc.trolltech.com/4.5/geometry.html
Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: LeNsTR от Февраль 24, 2009, 20:48 klik QPoint(41,92)
move QPoint(1120,0) QPoint(1161,93) QPoint(41,92) QPoint(1120,1) KDE4.2, Qt4.5, багов нет :) Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: drsm от Февраль 25, 2009, 10:21 у меня под гномом тоже какая-то ерунда происходит с програмным перемещением QDockWidget во floating mode.
симптомы похожи на https://bugzilla.redhat.com/show_bug.cgi?id=426354 те пока не двинули главное окно, QDockWidget::setGeometry() куда-то нетуда вобще двигает. также глючит maxmize/restore Название: Re: Qt 4.4.3, ерунда с pos(), господа Отправлено: Alex Custov от Февраль 25, 2009, 10:33 там написано что это баг metacity, но у меня он на kwin|openbox воспроизводится на ура.
|