summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylandview.cpp
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@theqtcompany.com>2015-05-13 14:44:05 +0200
committerJørgen Lind <jorgen.lind@theqtcompany.com>2015-08-28 13:10:32 +0200
commit666c3fcc69b9b25caa9b68b988e0004489653171 (patch)
tree00613a3861b5fb73978b1fd01e7e2f97f29de28d /src/compositor/compositor_api/qwaylandview.cpp
parent5f3918b8046c461929daf62689da2cc75f7a988d (diff)
Remove the default shell functionality
This will be readded in a different way. Also, remove the WaylandSurfaceChrome since it is no longer needed, and just use WaylandView directly Change-Id: I8d4a7b2135d9fdaea7dd3fcd729e55cceebf48fb
Diffstat (limited to 'src/compositor/compositor_api/qwaylandview.cpp')
-rw-r--r--src/compositor/compositor_api/qwaylandview.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/compositor/compositor_api/qwaylandview.cpp b/src/compositor/compositor_api/qwaylandview.cpp
index 4970de26f..f83948302 100644
--- a/src/compositor/compositor_api/qwaylandview.cpp
+++ b/src/compositor/compositor_api/qwaylandview.cpp
@@ -53,8 +53,8 @@ void QWaylandViewPrivate::markSurfaceAsDestroyed(QWaylandSurface *surface)
Q_Q(QWaylandView);
Q_ASSERT(surface == this->surface);
- q->waylandSurfaceDestroyed();
q->setSurface(Q_NULLPTR);
+ q->waylandSurfaceDestroyed();
}
QWaylandView::QWaylandView()
@@ -86,6 +86,12 @@ QWaylandSurface *QWaylandView::surface() const
void QWaylandView::setSurface(QWaylandSurface *newSurface)
{
Q_D(QWaylandView);
+ if (d->surface == newSurface)
+ return;
+
+ if (!d->output && newSurface && !d->surface)
+ setOutput(newSurface->primaryOutput());
+
QWaylandSurface *oldSurface = d->surface;
d->surface = newSurface;