QXcbNativeIntegration: Add query for compositing enabled

Task-number: QTBUG-41195
Change-Id: I4f37c82f6757283ed58b38c7fd47849fb4810bce
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
bb10
Gabriel de Dietrich 2016-03-02 14:42:34 -08:00 committed by Shawn Rutledge
parent 089ed1525e
commit 5a56bf4104
2 changed files with 8 additions and 2 deletions

View File

@ -85,7 +85,8 @@ static int resourceType(const QByteArray &key)
QByteArrayLiteral("rootwindow"),
QByteArrayLiteral("subpixeltype"), QByteArrayLiteral("antialiasingEnabled"),
QByteArrayLiteral("nofonthinting"),
QByteArrayLiteral("atspibus")
QByteArrayLiteral("atspibus"),
QByteArrayLiteral("compositingenabled")
};
const QByteArray *end = names + sizeof(names) / sizeof(names[0]);
const QByteArray *result = std::find(names, end, key);
@ -246,6 +247,10 @@ void *QXcbNativeInterface::nativeResourceForScreen(const QByteArray &resourceStr
case RootWindow:
result = reinterpret_cast<void *>(xcbScreen->root());
break;
case CompositingEnabled:
if (QXcbVirtualDesktop *vd = xcbScreen->virtualDesktop())
result = vd->compositingActive() ? this : Q_NULLPTR;
break;
default:
break;
}

View File

@ -74,7 +74,8 @@ public:
ScreenSubpixelType,
ScreenAntialiasingEnabled,
NoFontHinting,
AtspiBus
AtspiBus,
CompositingEnabled
};
QXcbNativeInterface();