summaryrefslogtreecommitdiffstats
path: root/src/compositor/wayland_wrapper/qwlextendedsurface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/compositor/wayland_wrapper/qwlextendedsurface.cpp')
-rw-r--r--src/compositor/wayland_wrapper/qwlextendedsurface.cpp201
1 files changed, 0 insertions, 201 deletions
diff --git a/src/compositor/wayland_wrapper/qwlextendedsurface.cpp b/src/compositor/wayland_wrapper/qwlextendedsurface.cpp
deleted file mode 100644
index 50cc5bb7e..000000000
--- a/src/compositor/wayland_wrapper/qwlextendedsurface.cpp
+++ /dev/null
@@ -1,201 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2015 The Qt Company Ltd.
-** Contact: http://www.qt.io/licensing/
-**
-** This file is part of the Qt Compositor.
-**
-** $QT_BEGIN_LICENSE:BSD$
-** You may use this file under the terms of the BSD license as follows:
-**
-** "Redistribution and use in source and binary forms, with or without
-** modification, are permitted provided that the following conditions are
-** met:
-** * Redistributions of source code must retain the above copyright
-** notice, this list of conditions and the following disclaimer.
-** * Redistributions in binary form must reproduce the above copyright
-** notice, this list of conditions and the following disclaimer in
-** the documentation and/or other materials provided with the
-** distribution.
-** * Neither the name of The Qt Company Ltd nor the names of its
-** contributors may be used to endorse or promote products derived
-** from this software without specific prior written permission.
-**
-**
-** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "qwlextendedsurface_p.h"
-
-#include "qwlcompositor_p.h"
-#include "qwlsurface_p.h"
-
-QT_BEGIN_NAMESPACE
-
-namespace QtWayland {
-
-SurfaceExtensionGlobal::SurfaceExtensionGlobal(Compositor *compositor)
- : QtWaylandServer::qt_surface_extension(compositor->wl_display(), 1)
-{
-}
-
-void SurfaceExtensionGlobal::surface_extension_get_extended_surface(Resource *resource,
- uint32_t id,
- struct wl_resource *surface_resource)
-{
- Surface *surface = Surface::fromResource(surface_resource);
- new ExtendedSurface(resource->client(),id, wl_resource_get_version(resource->handle), surface);
-}
-
-ExtendedSurface::ExtendedSurface(struct wl_client *client, uint32_t id, int version, Surface *surface)
- : QWaylandSurfaceInterface(surface->waylandSurface())
- , QtWaylandServer::qt_extended_surface(client, id, version)
- , m_surface(surface)
- , m_windowFlags(0)
-{
- Q_ASSERT(surface->extendedSurface() == 0);
- surface->setExtendedSurface(this);
-}
-
-ExtendedSurface::~ExtendedSurface()
-{
- if (m_surface)
- m_surface->setExtendedSurface(0);
-}
-
-void ExtendedSurface::sendGenericProperty(const QString &name, const QVariant &variant)
-{
- QByteArray byteValue;
- QDataStream ds(&byteValue, QIODevice::WriteOnly);
- ds << variant;
- send_set_generic_property(name, byteValue);
-
-}
-
-void ExtendedSurface::setVisibility(QWindow::Visibility visibility)
-{
- // If this change came from the client, we shouldn't update it
- send_onscreen_visibility(visibility);
-}
-
-void ExtendedSurface::setParentSurface(Surface *surface)
-{
- m_surface = surface;
-}
-
-bool ExtendedSurface::runOperation(QWaylandSurfaceOp *op)
-{
- switch (op->type()) {
- case QWaylandSurfaceOp::Close:
- send_close();
- return true;
- case QWaylandSurfaceOp::SetVisibility:
- setVisibility(static_cast<QWaylandSurfaceSetVisibilityOp *>(op)->visibility());
- return true;
- default:
- break;
- }
- return false;
-}
-
-void ExtendedSurface::extended_surface_update_generic_property(Resource *resource,
- const QString &name,
- struct wl_array *value)
-{
- Q_UNUSED(resource);
- QVariant variantValue;
- QByteArray byteValue((const char*)value->data, value->size);
- QDataStream ds(&byteValue, QIODevice::ReadOnly);
- ds >> variantValue;
- setWindowProperty(name,variantValue,false);
-}
-
-Qt::ScreenOrientations ExtendedSurface::contentOrientationMask() const
-{
- return m_contentOrientationMask;
-}
-
-void ExtendedSurface::extended_surface_set_content_orientation_mask(Resource *resource, int32_t orientation)
-{
- Q_UNUSED(resource);
- Qt::ScreenOrientations mask = 0;
- if (orientation & QT_EXTENDED_SURFACE_ORIENTATION_PORTRAITORIENTATION)
- mask |= Qt::PortraitOrientation;
- if (orientation & QT_EXTENDED_SURFACE_ORIENTATION_LANDSCAPEORIENTATION)
- mask |= Qt::LandscapeOrientation;
- if (orientation & QT_EXTENDED_SURFACE_ORIENTATION_INVERTEDPORTRAITORIENTATION)
- mask |= Qt::InvertedPortraitOrientation;
- if (orientation & QT_EXTENDED_SURFACE_ORIENTATION_INVERTEDLANDSCAPEORIENTATION)
- mask |= Qt::InvertedLandscapeOrientation;
- if (orientation & QT_EXTENDED_SURFACE_ORIENTATION_PRIMARYORIENTATION)
- mask |= Qt::PrimaryOrientation;
-
- Qt::ScreenOrientations oldMask = m_contentOrientationMask;
- m_contentOrientationMask = mask;
-
- if (m_surface && mask != oldMask)
- emit m_surface->waylandSurface()->orientationUpdateMaskChanged();
-}
-
-QVariantMap ExtendedSurface::windowProperties() const
-{
- return m_windowProperties;
-}
-
-QVariant ExtendedSurface::windowProperty(const QString &propertyName) const
-{
- QVariantMap props = m_windowProperties;
- return props.value(propertyName);
-}
-
-void ExtendedSurface::setWindowProperty(const QString &name, const QVariant &value, bool writeUpdateToClient)
-{
- m_windowProperties.insert(name, value);
- m_surface->waylandSurface()->windowPropertyChanged(name,value);
- if (writeUpdateToClient)
- sendGenericProperty(name, value);
-}
-
-void ExtendedSurface::extended_surface_set_window_flags(Resource *resource, int32_t flags)
-{
- Q_UNUSED(resource);
- QWaylandSurface::WindowFlags windowFlags(flags);
- if (!m_surface || windowFlags == m_windowFlags)
- return;
- m_windowFlags = windowFlags;
- emit m_surface->waylandSurface()->windowFlagsChanged(windowFlags);
-}
-
-void ExtendedSurface::extended_surface_destroy_resource(Resource *)
-{
- delete this;
-}
-
-void ExtendedSurface::extended_surface_raise(Resource *)
-{
- if (m_surface)
- emit m_surface->waylandSurface()->raiseRequested();
-}
-
-void ExtendedSurface::extended_surface_lower(Resource *)
-{
- if (m_surface)
- emit m_surface->waylandSurface()->lowerRequested();
-}
-
-}
-
-QT_END_NAMESPACE