summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa/qcocoabackingstore.mm
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoabackingstore.mm')
-rw-r--r--src/plugins/platforms/cocoa/qcocoabackingstore.mm12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoabackingstore.mm b/src/plugins/platforms/cocoa/qcocoabackingstore.mm
index 5e221ffd8b..3a55e00c48 100644
--- a/src/plugins/platforms/cocoa/qcocoabackingstore.mm
+++ b/src/plugins/platforms/cocoa/qcocoabackingstore.mm
@@ -97,4 +97,16 @@ void QCocoaBackingStore::resize(const QSize &size, const QRegion &)
[static_cast<QNSView *>(m_cocoaWindow->m_contentView) setImage:m_image];
}
+bool QCocoaBackingStore::scroll(const QRegion &area, int dx, int dy)
+{
+ extern void qt_scrollRectInImage(QImage &img, const QRect &rect, const QPoint &offset);
+ QPoint qpoint(dx, dy);
+ const QVector<QRect> qrects = area.rects();
+ for (int i = 0; i < qrects.count(); ++i) {
+ const QRect &qrect = qrects.at(i);
+ qt_scrollRectInImage(*m_image, qrect, qpoint);
+ }
+ return true;
+}
+
QT_END_NAMESPACE