Review Request: KDIalog::screenRect: workaround for faulty QDesktopWidget::geometry

Thomas Gahr identity.kde.org at dadommas.de
Sat Sep 24 14:58:42 BST 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102671/
-----------------------------------------------------------

(Updated Sept. 24, 2011, 1:58 p.m.)


Review request for kdelibs.


Changes
-------

Use availableGeometry(widget) instead of screenRect(widget) to be consistent with the if()-branch above


Summary
-------

This patch changes KDialog::screenRect to call QDesktopWidget::screenGeometry(widget) instead of QDesktopWidget::geometry(), which returns the wrong geometry if a second monitor has been connected and disconnected.
This fixes a bug described here:
http://article.gmane.org/gmane.comp.kde.devel.core/71875
The testcase and results can be found here:
http://article.gmane.org/gmane.comp.kde.devel.core/71911

Behaviour of QDesktopWidget::geometry() vs. QDesktopWidget::screenGeometry(widget) are equivalent in case of non-faulty ::geometry() and fix the problem in case of faulty ::geometry(). So I wouldn't consider this a workaround that needs to be maintained/changed back once (if) the bug in Qt has been fixed. On the contrary: using ::screenGeometry(widget) is more verbose than ::geometry(), which make more sense in the context of KDialog::screenRect(QWidget* widget,int screen) IMHO


Diffs (updated)
-----

  kdeui/dialogs/kdialog.cpp 0cabb85 

Diff: http://git.reviewboard.kde.org/r/102671/diff


Testing
-------

Tested successfully with 4.7.0 on Fedora 15 and current master... and on branch KDE/4.7 - as expected everything works fine


Thanks,

Thomas

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20110924/53f1203b/attachment.htm>


More information about the kde-core-devel mailing list