diff options
author | Morten Johan Sørvig <morten.sorvig@nokia.com> | 2010-01-18 08:14:12 (GMT) |
---|---|---|
committer | Richard Moe Gustavsen <richard.gustavsen@nokia.com> | 2010-02-04 09:11:03 (GMT) |
commit | 04e34fe3aecca482abeeabe2e31778e9102eeb08 (patch) | |
tree | 89a10ac1baa65306c26c61886397912755e00af3 /src/gui/kernel/qt_cocoa_helpers_mac.mm | |
parent | 3e6b22f138ad5b592dedbca99f91fdf612f20cea (diff) | |
download | Qt-04e34fe3aecca482abeeabe2e31778e9102eeb08.zip Qt-04e34fe3aecca482abeeabe2e31778e9102eeb08.tar.gz Qt-04e34fe3aecca482abeeabe2e31778e9102eeb08.tar.bz2 |
Improve raster graphics system performance on Mac (second try).
This fixes the qmlviewer "sluggish animations and lost
mouse events" issue by making sure we don't block and
wait for for the screen refresh when flushing the
backing store to the screen.
NB: This commit fixes build issues found in f5f62c0bed.
Review: msorvig
Details:
- Don't force repaints, flush the backingstore in response
to a Cocoa paint/display events only.
- Flush once per window.
- Get the CGContext from the window (don't create a new one)
- Don't call CGContextiFlush on the context.
Diffstat (limited to 'src/gui/kernel/qt_cocoa_helpers_mac.mm')
-rw-r--r-- | src/gui/kernel/qt_cocoa_helpers_mac.mm | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/kernel/qt_cocoa_helpers_mac.mm b/src/gui/kernel/qt_cocoa_helpers_mac.mm index e06a810..65c04e5 100644 --- a/src/gui/kernel/qt_cocoa_helpers_mac.mm +++ b/src/gui/kernel/qt_cocoa_helpers_mac.mm @@ -1162,7 +1162,7 @@ CGContextRef qt_mac_graphicsContextFor(QWidget *widget) CGrafPtr port = GetWindowPort(qt_mac_window_for(widget)); QDBeginCGContext(port, &context); #else - CGContextRef context = (CGContextRef)[[NSGraphicsContext graphicsContextWithWindow:qt_mac_window_for(widget)] graphicsPort]; + CGContextRef context = reinterpret_cast<CGContextRef>([[qt_mac_window_for(widget) graphicsContext] graphicsPort]); #endif return context; } |