diff options
author | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> | 2010-02-17 14:46:01 (GMT) |
---|---|---|
committer | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> | 2010-02-17 14:46:01 (GMT) |
commit | 60f3e3abbb9bfd61448a761701159cf880e66c19 (patch) | |
tree | fabe4b9f586d17f6ecc097599d841148e0a71894 /src/gui/painting | |
parent | e43cf7a591fc98c544c620e0722bdd1201feaea9 (diff) | |
parent | a7ef2d899d711d750238a8d69284da808188b407 (diff) | |
download | Qt-60f3e3abbb9bfd61448a761701159cf880e66c19.zip Qt-60f3e3abbb9bfd61448a761701159cf880e66c19.tar.gz Qt-60f3e3abbb9bfd61448a761701159cf880e66c19.tar.bz2 |
Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/oslo-staging-2
Diffstat (limited to 'src/gui/painting')
-rw-r--r-- | src/gui/painting/qprintengine_mac.mm | 2 | ||||
-rw-r--r-- | src/gui/painting/qwindowsurface_s60.cpp | 10 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/gui/painting/qprintengine_mac.mm b/src/gui/painting/qprintengine_mac.mm index ea810c5..3d5d1d5 100644 --- a/src/gui/painting/qprintengine_mac.mm +++ b/src/gui/painting/qprintengine_mac.mm @@ -791,7 +791,7 @@ QVariant QMacPrintEngine::property(PrintEnginePropertyKey key) const case PPK_CopyCount: { UInt32 copies = 1; PMGetCopies(d->settings, &copies); - ret = copies; + ret = (uint) copies; break; } case PPK_SupportsMultipleCopies: diff --git a/src/gui/painting/qwindowsurface_s60.cpp b/src/gui/painting/qwindowsurface_s60.cpp index 6cbf3d9..028ec48 100644 --- a/src/gui/painting/qwindowsurface_s60.cpp +++ b/src/gui/painting/qwindowsurface_s60.cpp @@ -149,11 +149,19 @@ void QS60WindowSurface::flush(QWidget *widget, const QRegion ®ion, const QPoi Q_ASSERT(window); QTLWExtra *topExtra = window->d_func()->maybeTopData(); Q_ASSERT(topExtra); + QRect qr = region.boundingRect(); if (!topExtra->inExpose) { topExtra->inExpose = true; // Prevent DrawNow() from calling syncBackingStore() again - TRect tr = qt_QRect2TRect(region.boundingRect()); + TRect tr = qt_QRect2TRect(qr); widget->winId()->DrawNow(tr); topExtra->inExpose = false; + } else { + // This handles the case when syncBackingStore updates content outside of the + // original drawing rectangle. This might happen if there are pending update() + // events at the same time as we get a Draw() from Symbian. + QRect drawRect = qt_TRect2QRect(widget->winId()->DrawableWindow()->GetDrawRect()); + if (!drawRect.contains(qr)) + widget->winId()->DrawDeferred(); } } |