summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/painting')
-rw-r--r--src/gui/painting/qoutlinemapper.cpp2
-rw-r--r--src/gui/painting/qpaintengine_mac.cpp8
2 files changed, 7 insertions, 3 deletions
diff --git a/src/gui/painting/qoutlinemapper.cpp b/src/gui/painting/qoutlinemapper.cpp
index 216b8c6..8d04a84 100644
--- a/src/gui/painting/qoutlinemapper.cpp
+++ b/src/gui/painting/qoutlinemapper.cpp
@@ -40,7 +40,7 @@
****************************************************************************/
#include "qoutlinemapper_p.h"
-
+#include <private/qpainterpath_p.h>
#include "qmath.h"
#include <stdlib.h>
diff --git a/src/gui/painting/qpaintengine_mac.cpp b/src/gui/painting/qpaintengine_mac.cpp
index 934b385..249bcfa 100644
--- a/src/gui/painting/qpaintengine_mac.cpp
+++ b/src/gui/painting/qpaintengine_mac.cpp
@@ -116,11 +116,15 @@ QMacCGContext::QMacCGContext(QPainter *p)
if (devType == QInternal::Widget) {
QRegion clip = p->paintEngine()->systemClip();
+ QTransform native = p->deviceTransform();
+ QTransform logical = p->combinedTransform();
if (p->hasClipping()) {
+ QRegion r = p->clipRegion();
+ r.translate(native.dx() - logical.dx(), native.dy() - logical.dy());
if (clip.isEmpty())
- clip = p->clipRegion();
+ clip = r;
else
- clip &= p->clipRegion();
+ clip &= r;
}
qt_mac_clip_cg(context, clip, 0);