diff options
author | Liang Qi <liang.qi@qt.io> | 2017-02-24 19:57:17 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2017-02-24 20:01:42 +0100 |
commit | de49839df8abfba1f3ed3c36ef3177e4a9d6ef00 (patch) | |
tree | 71e777ca1e33c58edd9149821e970495ef4b75b2 /src/plugins | |
parent | e6234535929c67e7fbfa1ad7ce88f37df0b68d45 (diff) | |
parent | 4d3781b640e8fb0a04e96b2d05199247556b8d86 (diff) |
Merge remote-tracking branch 'origin/5.8' into 5.9
Conflicts:
mkspecs/features/moc.prf
Change-Id: Ia71c8e3b3185f7c999bf226d0675051b10b8740b
Diffstat (limited to 'src/plugins')
6 files changed, 16 insertions, 10 deletions
diff --git a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp index 736c66ebc0..0a55f689c6 100644 --- a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp +++ b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp @@ -572,7 +572,8 @@ QString QIBusPlatformInputContextPrivate::getSocketPath() if (debug) qDebug() << "host=" << host << "displayNumber" << displayNumber; - return QDir::homePath() + QLatin1String("/.config/ibus/bus/") + + return QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + + QLatin1String("/ibus/bus/") + QLatin1String(QDBusConnection::localMachineId()) + QLatin1Char('-') + QString::fromLocal8Bit(host) + QLatin1Char('-') + QString::fromLocal8Bit(displayNumber); } diff --git a/src/plugins/platforms/android/qandroidplatformopenglcontext.cpp b/src/plugins/platforms/android/qandroidplatformopenglcontext.cpp index d9ecdfac3d..d3810329c5 100644 --- a/src/plugins/platforms/android/qandroidplatformopenglcontext.cpp +++ b/src/plugins/platforms/android/qandroidplatformopenglcontext.cpp @@ -100,10 +100,6 @@ bool QAndroidPlatformOpenGLContext::makeCurrent(QPlatformSurface *surface) bool ret = QEGLPlatformContext::makeCurrent(surface); QOpenGLContextPrivate *ctx_d = QOpenGLContextPrivate::get(context()); - const char *rendererString = reinterpret_cast<const char *>(glGetString(GL_RENDERER)); - if (rendererString != 0 && qstrncmp(rendererString, "Android Emulator", 16) == 0) - ctx_d->workaround_missingPrecisionQualifiers = true; - if (!ctx_d->workaround_brokenFBOReadBack && needsFBOReadBackWorkaround()) ctx_d->workaround_brokenFBOReadBack = true; diff --git a/src/plugins/platforms/cocoa/qcocoadrag.mm b/src/plugins/platforms/cocoa/qcocoadrag.mm index de4fa95530..c71e80d191 100644 --- a/src/plugins/platforms/cocoa/qcocoadrag.mm +++ b/src/plugins/platforms/cocoa/qcocoadrag.mm @@ -201,6 +201,10 @@ QPixmap QCocoaDrag::dragPixmap(QDrag *drag, QPoint &hotSpot) const dpr = sourceWindow->devicePixelRatio(); } #endif + else { + if (const QWindow *focusWindow = qApp->focusWindow()) + dpr = focusWindow->devicePixelRatio(); + } pm = QPixmap(width * dpr, height * dpr); pm.setDevicePixelRatio(dpr); QPainter p(&pm); diff --git a/src/plugins/platforms/vnc/qvncclient.cpp b/src/plugins/platforms/vnc/qvncclient.cpp index dae3e83f37..58dcfc9b51 100644 --- a/src/plugins/platforms/vnc/qvncclient.cpp +++ b/src/plugins/platforms/vnc/qvncclient.cpp @@ -142,7 +142,7 @@ void QVncClient::convertPixels(char *dst, const char *src, int count) const case 16: { quint16 p = *reinterpret_cast<const quint16*>(src); #if Q_BYTE_ORDER == Q_BIG_ENDIAN - if (swapBytes) + if (m_swapBytes) p = ((p & 0xff) << 8) | ((p & 0xff00) >> 8); #endif r = (p >> 11) & 0x1f; @@ -484,7 +484,7 @@ void QVncClient::setPixelFormat() m_sameEndian = (QSysInfo::ByteOrder == QSysInfo::BigEndian) == !!m_pixelFormat.bigEndian; m_needConversion = pixelConversionNeeded(); #if Q_BYTE_ORDER == Q_BIG_ENDIAN - m_swapBytes = qvnc_screen->swapBytes(); + m_swapBytes = server()->screen()->swapBytes(); #endif } } @@ -639,7 +639,7 @@ bool QVncClient::pixelConversionNeeded() const return true; #if Q_BYTE_ORDER == Q_BIG_ENDIAN - if (qvnc_screen->swapBytes()) + if (server()->screen()->swapBytes()) return true; #endif diff --git a/src/plugins/platforms/vnc/qvncscreen.cpp b/src/plugins/platforms/vnc/qvncscreen.cpp index 91a8933dba..75c8bedff7 100644 --- a/src/plugins/platforms/vnc/qvncscreen.cpp +++ b/src/plugins/platforms/vnc/qvncscreen.cpp @@ -43,6 +43,7 @@ #include <QtFbSupport/private/qfbcursor_p.h> #include <QtGui/QPainter> +#include <QtGui/QScreen> #include <QtCore/QRegularExpression> @@ -172,14 +173,18 @@ QPixmap QVncScreen::grabWindow(WId wid, int x, int y, int width, int height) con } #if Q_BYTE_ORDER == Q_BIG_ENDIAN -bool QVNCScreen::swapBytes() const +bool QVncScreen::swapBytes() const { + return false; + + /* TODO if (depth() != 16) return false; if (screen()) return screen()->frameBufferLittleEndian(); return frameBufferLittleEndian(); + */ } #endif diff --git a/src/plugins/platforms/vnc/qvncscreen.h b/src/plugins/platforms/vnc/qvncscreen.h index c0a22ed140..b2dd89a2ed 100644 --- a/src/plugins/platforms/vnc/qvncscreen.h +++ b/src/plugins/platforms/vnc/qvncscreen.h @@ -75,7 +75,7 @@ public: void clearDirty() { dirtyRegion = QRegion(); } #if Q_BYTE_ORDER == Q_BIG_ENDIAN - bool swapBytes() const + bool swapBytes() const; #endif QStringList mArgs; |