summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohan Klokkhammer Helsing <johan.helsing@qt.io>2017-06-14 17:08:32 +0200
committerJohan Helsing <johan.helsing@qt.io>2017-12-04 14:19:43 +0000
commit42cf0bd5fa14075bf90e925010b36c83e03f7f87 (patch)
treeb009c70d30c9568cb393fe85bb582588dc20b5d0
parent57c4af2b18c0fb1d266b245a107fa6cb876b9d9e (diff)
Remove QWaylandExtendedSurface* from the private compositor API
Removes QWaylandExtendedSurface, QWaylandSurfaceExtensionGlobal. The only code touching these classes was QWaylandQuickSurface::setClientRenderingEnabled(), but that code was only useful if QWaylandSurfaceExtensionGlobal had already been instantiated. The extension is a remnant from the past, and since no examples or tests are using the extension, it's safe to remove it. Change-Id: Ife202cb035c836b73a7c03985f5bf3be0abebc3d Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
-rw-r--r--src/compositor/compositor_api/qwaylandquicksurface.cpp13
-rw-r--r--src/compositor/compositor_api/qwaylandquicksurface.h6
-rw-r--r--src/compositor/compositor_api/qwaylandsurface.cpp1
-rw-r--r--src/compositor/extensions/extensions.pri3
-rw-r--r--src/compositor/extensions/qwlextendedsurface.cpp188
-rw-r--r--src/compositor/extensions/qwlextendedsurface_p.h159
6 files changed, 8 insertions, 362 deletions
diff --git a/src/compositor/compositor_api/qwaylandquicksurface.cpp b/src/compositor/compositor_api/qwaylandquicksurface.cpp
index ec68ee6a1..1197e9e43 100644
--- a/src/compositor/compositor_api/qwaylandquicksurface.cpp
+++ b/src/compositor/compositor_api/qwaylandquicksurface.cpp
@@ -49,9 +49,6 @@
#include <QtWaylandCompositor/QWaylandView>
#include <QtWaylandCompositor/private/qwaylandsurface_p.h>
-#include <QtWaylandCompositor/private/qwayland-server-surface-extension.h>
-#include <QtWaylandCompositor/private/qwlextendedsurface_p.h>
-
QT_BEGIN_NAMESPACE
class QWaylandQuickSurfacePrivate : public QWaylandSurfacePrivate
@@ -112,8 +109,11 @@ void QWaylandQuickSurface::setUseTextureAlpha(bool useTextureAlpha)
/*!
* \qmlproperty bool QtWaylandCompositor::WaylandSurface::clientRenderingEnabled
+ * \deprecated
*
- * This property specifies whether client rendering is enabled for the surface.
+ * This property used to specify whether client rendering was enabled for the surface.
+ * It depended on a Wayland extension that was part of the private API. The surface extension
+ * is not used anymore, so this property does nothing.
*/
bool QWaylandQuickSurface::clientRenderingEnabled() const
{
@@ -124,12 +124,9 @@ bool QWaylandQuickSurface::clientRenderingEnabled() const
void QWaylandQuickSurface::setClientRenderingEnabled(bool enabled)
{
Q_D(QWaylandQuickSurface);
+ qWarning() << Q_FUNC_INFO << "doesn't do anything";
if (d->clientRenderingEnabled != enabled) {
d->clientRenderingEnabled = enabled;
-
- if (QtWayland::ExtendedSurface *extSurface = QtWayland::ExtendedSurface::findIn(this))
- extSurface->setVisibility(enabled ? QWindow::AutomaticVisibility : QWindow::Hidden);
-
emit clientRenderingEnabledChanged();
}
}
diff --git a/src/compositor/compositor_api/qwaylandquicksurface.h b/src/compositor/compositor_api/qwaylandquicksurface.h
index 7ec08e123..273fb25f4 100644
--- a/src/compositor/compositor_api/qwaylandquicksurface.h
+++ b/src/compositor/compositor_api/qwaylandquicksurface.h
@@ -63,12 +63,12 @@ public:
bool useTextureAlpha() const;
void setUseTextureAlpha(bool useTextureAlpha);
- bool clientRenderingEnabled() const;
- void setClientRenderingEnabled(bool enabled);
+ Q_DECL_DEPRECATED bool clientRenderingEnabled() const;
+ Q_DECL_DEPRECATED void setClientRenderingEnabled(bool enabled);
Q_SIGNALS:
void useTextureAlphaChanged();
- void clientRenderingEnabledChanged();
+ void clientRenderingEnabledChanged(); //deprecated
};
QT_END_NAMESPACE
diff --git a/src/compositor/compositor_api/qwaylandsurface.cpp b/src/compositor/compositor_api/qwaylandsurface.cpp
index c817a7cda..34b093d21 100644
--- a/src/compositor/compositor_api/qwaylandsurface.cpp
+++ b/src/compositor/compositor_api/qwaylandsurface.cpp
@@ -49,7 +49,6 @@
#include "wayland_wrapper/qwldatadevicemanager_p.h"
#endif
-#include "extensions/qwlextendedsurface_p.h"
#include "qwaylandinputmethodcontrol_p.h"
#include <QtWaylandCompositor/QWaylandCompositor>
diff --git a/src/compositor/extensions/extensions.pri b/src/compositor/extensions/extensions.pri
index 9cb0bcfa1..7c53e5d43 100644
--- a/src/compositor/extensions/extensions.pri
+++ b/src/compositor/extensions/extensions.pri
@@ -2,7 +2,6 @@ CONFIG += wayland-scanner
CONFIG += generated_privates
WAYLANDSERVERSOURCES += \
- ../extensions/surface-extension.xml \
../extensions/touch-extension.xml \
../extensions/qtkey-extension.xml \
../extensions/qt-windowmanager.xml \
@@ -12,7 +11,6 @@ WAYLANDSERVERSOURCES += \
../3rdparty/protocol/ivi-application.xml \
HEADERS += \
- extensions/qwlextendedsurface_p.h \
extensions/qwlqttouch_p.h \
extensions/qwlqtkey_p.h \
extensions/qwaylandshell.h \
@@ -36,7 +34,6 @@ HEADERS += \
extensions/qwaylandivisurface_p.h \
SOURCES += \
- extensions/qwlextendedsurface.cpp \
extensions/qwlqttouch.cpp \
extensions/qwlqtkey.cpp \
extensions/qwaylandshell.cpp \
diff --git a/src/compositor/extensions/qwlextendedsurface.cpp b/src/compositor/extensions/qwlextendedsurface.cpp
deleted file mode 100644
index b0850f0e2..000000000
--- a/src/compositor/extensions/qwlextendedsurface.cpp
+++ /dev/null
@@ -1,188 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2017 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 3 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL3 included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 3 requirements
-** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 2.0 or (at your option) the GNU General
-** Public license version 3 or any later version approved by the KDE Free
-** Qt Foundation. The licenses are as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-2.0.html and
-** https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "qwlextendedsurface_p.h"
-
-#include <QtWaylandCompositor/QWaylandCompositor>
-
-QT_BEGIN_NAMESPACE
-
-namespace QtWayland {
-
-SurfaceExtensionGlobal::SurfaceExtensionGlobal(QWaylandCompositor *compositor)
- : QWaylandCompositorExtensionTemplate(compositor)
- , QtWaylandServer::qt_surface_extension(compositor->display(), 1)
-{
-}
-
-void SurfaceExtensionGlobal::surface_extension_get_extended_surface(Resource *resource,
- uint32_t id,
- struct wl_resource *surface_resource)
-{
- QWaylandSurface *surface = QWaylandSurface::fromResource(surface_resource);
- ExtendedSurface *extSurface = new ExtendedSurface(resource->client(),id, wl_resource_get_version(resource->handle), surface);
- emit extendedSurfaceReady(extSurface, surface);
-}
-
-ExtendedSurface::ExtendedSurface(struct wl_client *client, uint32_t id, int version, QWaylandSurface *surface)
- : QWaylandCompositorExtensionTemplate(surface)
- , QtWaylandServer::qt_extended_surface(client, id, version)
- , m_surface(surface)
- , m_windowFlags(0)
-{
-}
-
-ExtendedSurface::~ExtendedSurface()
-{
-}
-
-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::sendOnScreenVisibilityChange(bool onScreen)
-{
- setVisibility(onScreen ? QWindow::AutomaticVisibility : QWindow::Hidden);
-}
-
-void ExtendedSurface::setVisibility(QWindow::Visibility visibility)
-{
- send_onscreen_visibility(visibility);
-}
-
-void ExtendedSurface::setParentSurface(QWaylandSurface *surface)
-{
- m_surface = surface;
-}
-
-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;
- setWindowPropertyImpl(name,variantValue);
-}
-
-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 (mask != oldMask)
- emit contentOrientationMaskChanged();
-}
-
-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)
-{
- setWindowPropertyImpl(name,value);
- sendGenericProperty(name, value);
-}
-
-void ExtendedSurface::setWindowPropertyImpl(const QString &name, const QVariant &value)
-{
- m_windowProperties.insert(name, value);
- emit windowPropertyChanged(name,value);
-}
-
-void ExtendedSurface::extended_surface_set_window_flags(Resource *resource, int32_t flags)
-{
- Q_UNUSED(resource);
- WindowFlags windowFlags(flags);
- if (windowFlags == m_windowFlags)
- return;
- m_windowFlags = windowFlags;
- emit windowFlagsChanged();
-}
-
-void ExtendedSurface::extended_surface_destroy_resource(Resource *)
-{
- delete this;
-}
-
-void ExtendedSurface::extended_surface_raise(Resource *)
-{
- emit raiseRequested();
-}
-
-void ExtendedSurface::extended_surface_lower(Resource *)
-{
- emit lowerRequested();
-}
-
-}
-
-QT_END_NAMESPACE
diff --git a/src/compositor/extensions/qwlextendedsurface_p.h b/src/compositor/extensions/qwlextendedsurface_p.h
deleted file mode 100644
index 8ad89619a..000000000
--- a/src/compositor/extensions/qwlextendedsurface_p.h
+++ /dev/null
@@ -1,159 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2017 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of the QtWaylandCompositor module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 3 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL3 included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 3 requirements
-** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 2.0 or (at your option) the GNU General
-** Public license version 3 or any later version approved by the KDE Free
-** Qt Foundation. The licenses are as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-2.0.html and
-** https://www.gnu.org/licenses/gpl-3.0.html.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef WLEXTENDEDSURFACE_H
-#define WLEXTENDEDSURFACE_H
-
-//
-// W A R N I N G
-// -------------
-//
-// This file is not part of the Qt API. It exists purely as an
-// implementation detail. This header file may change from version to
-// version without notice, or even be removed.
-//
-// We mean it.
-//
-
-#include <wayland-server.h>
-
-#include <QtWaylandCompositor/private/qwayland-server-surface-extension.h>
-#include <QtWaylandCompositor/qwaylandsurface.h>
-#include <QtWaylandCompositor/qwaylandcompositorextension.h>
-
-#include <QtCore/QVariant>
-#include <QtCore/QLinkedList>
-#include <QtGui/QWindow>
-
-QT_BEGIN_NAMESPACE
-
-class QWaylandCompositor;
-class QWaylandSurface;
-
-namespace QtWayland {
-
-class ExtendedSurface;
-
-class Q_WAYLAND_COMPOSITOR_EXPORT SurfaceExtensionGlobal : public QWaylandCompositorExtensionTemplate<SurfaceExtensionGlobal>, public QtWaylandServer::qt_surface_extension
-{
- Q_OBJECT
-public:
- SurfaceExtensionGlobal(QWaylandCompositor *compositor);
-
-Q_SIGNALS:
- void extendedSurfaceReady(ExtendedSurface *extSurface, QWaylandSurface *surface);
-
-private:
- void surface_extension_get_extended_surface(Resource *resource,
- uint32_t id,
- struct wl_resource *surface);
-
-};
-
-class Q_WAYLAND_COMPOSITOR_EXPORT ExtendedSurface : public QWaylandCompositorExtensionTemplate<ExtendedSurface>, public QtWaylandServer::qt_extended_surface
-{
- Q_OBJECT
- Q_PROPERTY(Qt::ScreenOrientations contentOrientationMask READ contentOrientationMask NOTIFY contentOrientationMaskChanged)
- Q_PROPERTY(WindowFlags windowFlags READ windowFlags NOTIFY windowFlagsChanged)
- Q_FLAGS(WindowFlag WindowFlags)
-public:
- enum WindowFlag {
- OverridesSystemGestures = 0x0001,
- StaysOnTop = 0x0002,
- BypassWindowManager = 0x0004
- };
- Q_DECLARE_FLAGS(WindowFlags, WindowFlag)
-
- ExtendedSurface(struct wl_client *client, uint32_t id, int version, QWaylandSurface *surface);
- ~ExtendedSurface();
-
- void sendGenericProperty(const QString &name, const QVariant &variant);
-
- void sendOnScreenVisibilityChange(bool onScreen);
- void setVisibility(QWindow::Visibility visibility);
-
- void setParentSurface(QWaylandSurface *s);
-
- Qt::ScreenOrientations contentOrientationMask() const;
-
- WindowFlags windowFlags() const { return m_windowFlags; }
-
- QVariantMap windowProperties() const;
- QVariant windowProperty(const QString &propertyName) const;
- void setWindowProperty(const QString &name, const QVariant &value);
-
-Q_SIGNALS:
- void contentOrientationMaskChanged();
- void windowFlagsChanged();
- void windowPropertyChanged(const QString &name, const QVariant &value);
- void raiseRequested();
- void lowerRequested();
-
-private:
- void setWindowPropertyImpl(const QString &name, const QVariant &value);
-
- QWaylandSurface *m_surface;
-
- Qt::ScreenOrientations m_contentOrientationMask;
-
- WindowFlags m_windowFlags;
-
- QByteArray m_authenticationToken;
- QVariantMap m_windowProperties;
-
- void extended_surface_update_generic_property(Resource *resource,
- const QString &name,
- struct wl_array *value) override;
-
- void extended_surface_set_content_orientation_mask(Resource *resource,
- int32_t orientation) override;
-
- void extended_surface_set_window_flags(Resource *resource,
- int32_t flags) override;
-
- void extended_surface_destroy_resource(Resource *) override;
- void extended_surface_raise(Resource *) override;
- void extended_surface_lower(Resource *) override;
-};
-
-}
-
-QT_END_NAMESPACE
-
-#endif // WLEXTENDEDSURFACE_H