summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qtwayland.pro2
-rw-r--r--src/client/qwaylanddataoffer.cpp2
-rw-r--r--src/client/qwaylandintegration.cpp11
-rw-r--r--src/compositor/compositor_api/qwaylandquickitem.cpp8
4 files changed, 18 insertions, 5 deletions
diff --git a/qtwayland.pro b/qtwayland.pro
index 04eca333b..fdcc3e24f 100644
--- a/qtwayland.pro
+++ b/qtwayland.pro
@@ -1,3 +1,3 @@
-requires(linux:!android)
+requires(linux:!android|macos)
requires(qtHaveModule(gui))
load(qt_parts)
diff --git a/src/client/qwaylanddataoffer.cpp b/src/client/qwaylanddataoffer.cpp
index 35085a7f0..0c732c020 100644
--- a/src/client/qwaylanddataoffer.cpp
+++ b/src/client/qwaylanddataoffer.cpp
@@ -135,7 +135,7 @@ QVariant QWaylandMimeData::retrieveData_sys(const QString &mimeType, QVariant::T
}
int pipefd[2];
- if (::pipe2(pipefd, O_CLOEXEC|O_NONBLOCK) == -1) {
+ if (qt_safe_pipe(pipefd, O_NONBLOCK) == -1) {
qWarning("QWaylandMimeData: pipe2() failed");
return QVariant();
}
diff --git a/src/client/qwaylandintegration.cpp b/src/client/qwaylandintegration.cpp
index b804988b2..6b2faf0c4 100644
--- a/src/client/qwaylandintegration.cpp
+++ b/src/client/qwaylandintegration.cpp
@@ -52,7 +52,12 @@
#include "qwaylandwindowmanagerintegration_p.h"
#include "qwaylandscreen_p.h"
-#include <QtFontDatabaseSupport/private/qgenericunixfontdatabase_p.h>
+#if defined(Q_OS_MACOS)
+# include <QtFontDatabaseSupport/private/qcoretextfontdatabase_p.h>
+# include <QtFontDatabaseSupport/private/qfontengine_coretext_p.h>
+#else
+# include <QtFontDatabaseSupport/private/qgenericunixfontdatabase_p.h>
+#endif
#include <QtEventDispatcherSupport/private/qgenericunixeventdispatcher_p.h>
#include <QtThemeSupport/private/qgenericunixthemes_p.h>
@@ -121,7 +126,11 @@ public:
};
QWaylandIntegration::QWaylandIntegration()
+#if defined(Q_OS_MACOS)
+ : mFontDb(new QCoreTextFontDatabaseEngineFactory<QCoreTextFontEngine>)
+#else
: mFontDb(new QGenericUnixFontDatabase())
+#endif
, mNativeInterface(new QWaylandNativeInterface(this))
#if QT_CONFIG(accessibility)
, mAccessibility(new QPlatformAccessibility())
diff --git a/src/compositor/compositor_api/qwaylandquickitem.cpp b/src/compositor/compositor_api/qwaylandquickitem.cpp
index d4cc94e4b..09e8f7621 100644
--- a/src/compositor/compositor_api/qwaylandquickitem.cpp
+++ b/src/compositor/compositor_api/qwaylandquickitem.cpp
@@ -1338,8 +1338,12 @@ void QWaylandQuickItem::handleDragStarted(QWaylandDrag *drag)
qreal QWaylandQuickItemPrivate::scaleFactor() const
{
- return (view->output() ? view->output()->scaleFactor() : 1)
- / (window ? window->devicePixelRatio() : 1);
+ qreal f = view->output() ? view->output()->scaleFactor() : 1;
+#if !defined(Q_OS_MACOS)
+ if (window)
+ f /= window->devicePixelRatio();
+#endif
+ return f;
}
QT_END_NAMESPACE