Details
-
Bug
-
Resolution: Done
-
P2: Important
-
4.7.1
-
Mac OS X 10.6.6 (also on 10.6.5), Qt 4.7.1 Cocoa binary distribution, ~3 year old iMac and a current MacBook Pro
Description
With the raster engine enabled the entire content of the mainwindow (widgets, QGraphicsScene content, ...) is painted upside down (see attached screenshot) after going full screen (and back to normal view). This "upside down" effect toggles when moving items (QGraphicsPixmap) in the QGraphicsScene.
How to reproduce
With the given example:
- Move the items around
- Everything is painted as expected
- Now go full screen (CMD + F)
- Move the items around (1)
- In seemingly erratic intervals the entire content of the QMainWindow is painted upside down
- Switch back to normal view (CMD + F)
- Move the items around
- Effect remains: every then and when the content is painted upside down
(1) Not sure what triggers this effect: I mostly get it when dragging a given item (or several items with multi-selection) in circles. It is pretty difficult to stop the movement at the very moment when the content is upside down - but with a little bit of practise one manages to do so, see screenshot
This works
- In main.cpp, comment out the line QApplication::setGraphicsSystem("raster"); (such that the Native paint engine is used)
- Repeat the steps above
- Everything is painted as expected, no upside down effect
Comments
- The same code (with Raster Engine enabled) works on Linux (Kubuntu 10.10, Qt 4.7.0, even on VirtualBox on the same Mac hardware)
- I have not yet tested the example on Windows with Raster Engine.
- Note as to reproduce this issue the widget at the left is not really necessary - I merely added it for illustrational reasons as to show that really the whole (content of) QMainWindow is painted upside down
- This issue should probably be linked to
QTBUG-12615 - Unfortunatelly on Mac there is another "graphical artifact" issue QTBUG-15663 "QPainter: graphical artifacts when drawing QPixmap with alpha and transformations", but when using the Native paint engine. If I could vote I'd rather see this graphical artifact fixed first, as the Raster Engine on Mac seems to need some more love before going prime time (Qt 4.8).