diff options
author | Giulio Camuffo <giulio.camuffo@jollamobile.com> | 2015-02-17 16:33:43 +0200 |
---|---|---|
committer | Giulio Camuffo <giulio.camuffo@jollamobile.com> | 2015-10-01 09:44:34 +0000 |
commit | cfd6c9bfc66036e2ec24804d7ceef051992fef47 (patch) | |
tree | 3b9027960d82bba85803bf44937be8a5ac6c25e2 /examples | |
parent | 07c7898c8902b28988a66aa79cdd0cc141d35a34 (diff) |
Implement the wl_subcompositor interface server-side
This change removes the qt_sub_surface extension and replaces it with
the standard wl_subsurface.
Only the bare minimum functionality is implemented, the wl_subsurface
requests are left as dummy handlers currently.
Change-Id: I025304072cf157f732e90c4b5649a07b295fdea5
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Mikko Levonmaa <mikko.levonmaa@bitfactor.fi>
Diffstat (limited to 'examples')
-rw-r--r-- | examples/wayland/qml-compositor/WindowContainer.qml | 2 | ||||
-rw-r--r-- | examples/wayland/qml-compositor/main.cpp | 5 | ||||
-rw-r--r-- | examples/wayland/qwindow-compositor/qwindowcompositor.cpp | 17 |
3 files changed, 3 insertions, 21 deletions
diff --git a/examples/wayland/qml-compositor/WindowContainer.qml b/examples/wayland/qml-compositor/WindowContainer.qml index 253daf7a9..017e2699b 100644 --- a/examples/wayland/qml-compositor/WindowContainer.qml +++ b/examples/wayland/qml-compositor/WindowContainer.qml @@ -108,7 +108,7 @@ Item { anchors.fill: parent blend: { if (child && chrome && (chrome.selected || child.focus)) 0.0; else 0.6 } opacity: 1.0 - z: 1 + z: -1 Behavior on blend { enabled: true; diff --git a/examples/wayland/qml-compositor/main.cpp b/examples/wayland/qml-compositor/main.cpp index ab8589986..6e634563a 100644 --- a/examples/wayland/qml-compositor/main.cpp +++ b/examples/wayland/qml-compositor/main.cpp @@ -120,10 +120,7 @@ private slots: } void sendCallbacks() { - if (m_fullscreenSurface) - sendFrameCallbacks(QList<QWaylandSurface *>() << m_fullscreenSurface); - else - sendFrameCallbacks(surfaces()); + sendFrameCallbacks(surfaces()); } protected: diff --git a/examples/wayland/qwindow-compositor/qwindowcompositor.cpp b/examples/wayland/qwindow-compositor/qwindowcompositor.cpp index 5d338692f..6663a04d0 100644 --- a/examples/wayland/qwindow-compositor/qwindowcompositor.cpp +++ b/examples/wayland/qwindow-compositor/qwindowcompositor.cpp @@ -118,7 +118,7 @@ public: }; QWindowCompositor::QWindowCompositor(CompositorWindow *window) - : QWaylandCompositor(0, DefaultExtensions | SubSurfaceExtension) + : QWaylandCompositor(0, DefaultExtensions) , m_window(window) , m_backgroundTexture(0) , m_textureBlitter(0) @@ -340,9 +340,6 @@ void QWindowCompositor::render() foreach (QWaylandSurfaceView *view, surface->views()) { QRect geo(view->pos().toPoint(),surface->size()); m_textureBlitter->drawTexture(texture,geo,m_window->size(),0,false,surface->isYInverted()); - foreach (QWaylandSurface *child, surface->subSurfaces()) { - drawSubSurface(view->pos().toPoint(), child); - } } } @@ -353,18 +350,6 @@ void QWindowCompositor::render() m_window->swapBuffers(); } -void QWindowCompositor::drawSubSurface(const QPoint &offset, QWaylandSurface *surface) -{ - GLuint texture = static_cast<BufferAttacher *>(surface->bufferAttacher())->texture; - QWaylandSurfaceView *view = surface->views().first(); - QPoint pos = view->pos().toPoint() + offset; - QRect geo(pos, surface->size()); - m_textureBlitter->drawTexture(texture, geo, m_window->size(), 0, false, surface->isYInverted()); - foreach (QWaylandSurface *child, surface->subSurfaces()) { - drawSubSurface(pos, child); - } -} - bool QWindowCompositor::eventFilter(QObject *obj, QEvent *event) { if (obj != m_window) |