summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Maw <jonathan.maw@codethink.co.uk>2015-04-21 14:20:43 +0000
committerJonathan Maw <jonathan.maw@codethink.co.uk>2015-05-01 15:08:29 +0000
commit394c54253d5d965e353b618fd373fa89f79cbd96 (patch)
tree037ebdda5e614a7a3746f102056b7e53416c1bb7
parentd42fc27e3a3eecc2d94c9ae8bf2ad9e0a7529bab (diff)
downloadqtwayland-394c54253d5d965e353b618fd373fa89f79cbd96.tar.gz
Use IVI-Surface-IDbaserock/genivi-5.4.0-wip
This is adapted off a patch by Holger Behrens <holger.behrens@windriver.com>
-rw-r--r--src/client/qwaylandwindow.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
index 17fbaac7..1bc83200 100644
--- a/src/client/qwaylandwindow.cpp
+++ b/src/client/qwaylandwindow.cpp
@@ -103,7 +103,14 @@ QWaylandWindow::QWaylandWindow(QWindow *window)
if (mDisplay->subSurfaceExtension())
mSubSurfaceWindow = new QWaylandSubSurface(this, mDisplay->subSurfaceExtension()->get_sub_surface_aware_surface(object()));
if (mDisplay->iviApplication() && (window->type() & Qt::Window)) {
- mIviSurface = new QWaylandIviSurface(mDisplay->iviApplication()->surface_create((uint32_t)QCoreApplication::applicationPid(), object()), this);
+ unsigned int id = 0;
+ QVariant value = window->property("IVI-Surface-ID");
+ if (value.isValid())
+ id = value.toUInt();
+ else
+ id = (uint32_t)QCoreApplication::applicationPid();
+
+ mIviSurface = new QWaylandIviSurface(mDisplay->iviApplication()->surface_create(id, object()), this);
}
if (!(window->flags() & Qt::BypassWindowManagerHint)) {
mShellSurface = mDisplay->createShellSurface(this);