diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/wayland/custom-extension/compositor/qml/main.qml | 2 | ||||
-rw-r--r-- | examples/wayland/multi-output/qml/ShellChrome.qml | 5 | ||||
-rw-r--r-- | examples/wayland/pure-qml/pure-qml.pro | 1 | ||||
-rw-r--r-- | examples/wayland/pure-qml/pure-qml.qrc | 1 | ||||
-rw-r--r-- | examples/wayland/pure-qml/qml/Chrome.qml | 31 | ||||
-rw-r--r-- | examples/wayland/pure-qml/qml/XdgChrome.qml | 90 | ||||
-rw-r--r-- | examples/wayland/pure-qml/qml/main.qml | 12 |
7 files changed, 29 insertions, 113 deletions
diff --git a/examples/wayland/custom-extension/compositor/qml/main.qml b/examples/wayland/custom-extension/compositor/qml/main.qml index ff83133be..097bfe30b 100644 --- a/examples/wayland/custom-extension/compositor/qml/main.qml +++ b/examples/wayland/custom-extension/compositor/qml/main.qml @@ -64,7 +64,7 @@ WaylandCompositor { Component { id: chromeComponent - WlShellSurfaceItem { + ShellSurfaceItem { id: chrome onSurfaceDestroyed: { if (chrome === lastItem) diff --git a/examples/wayland/multi-output/qml/ShellChrome.qml b/examples/wayland/multi-output/qml/ShellChrome.qml index 1dc90647d..dac3eb096 100644 --- a/examples/wayland/multi-output/qml/ShellChrome.qml +++ b/examples/wayland/multi-output/qml/ShellChrome.qml @@ -41,12 +41,9 @@ import QtQuick 2.0 import QtWayland.Compositor 1.0 -WlShellSurfaceItem { +ShellSurfaceItem { id: rootChrome - shellSurface: WlShellSurface { - } - onSurfaceDestroyed: { view.bufferLock = true; destroyAnimation.start(); diff --git a/examples/wayland/pure-qml/pure-qml.pro b/examples/wayland/pure-qml/pure-qml.pro index f0a10260a..20fc529ed 100644 --- a/examples/wayland/pure-qml/pure-qml.pro +++ b/examples/wayland/pure-qml/pure-qml.pro @@ -8,7 +8,6 @@ OTHER_FILES = \ qml/Screen.qml \ qml/Chrome.qml \ qml/Keyboard.qml \ - qml/XdgChrome.qml \ images/background.jpg \ RESOURCES += pure-qml.qrc diff --git a/examples/wayland/pure-qml/pure-qml.qrc b/examples/wayland/pure-qml/pure-qml.qrc index 333f5e613..8c95434d3 100644 --- a/examples/wayland/pure-qml/pure-qml.qrc +++ b/examples/wayland/pure-qml/pure-qml.qrc @@ -5,6 +5,5 @@ <file>qml/Screen.qml</file> <file>qml/Chrome.qml</file> <file>qml/Keyboard.qml</file> - <file>qml/XdgChrome.qml</file> </qresource> </RCC> diff --git a/examples/wayland/pure-qml/qml/Chrome.qml b/examples/wayland/pure-qml/qml/Chrome.qml index 1dc90647d..1c9066ef1 100644 --- a/examples/wayland/pure-qml/qml/Chrome.qml +++ b/examples/wayland/pure-qml/qml/Chrome.qml @@ -41,17 +41,27 @@ import QtQuick 2.0 import QtWayland.Compositor 1.0 -WlShellSurfaceItem { +ShellSurfaceItem { id: rootChrome - shellSurface: WlShellSurface { - } - onSurfaceDestroyed: { view.bufferLock = true; destroyAnimation.start(); } + Connections { + target: shellSurface + + // some signals are not available on wl_shell, so let's ignore them + ignoreUnknownSignals: true + + onActivatedChanged: { // xdg_shell only + if (shellSurface.activated) { + receivedFocusAnimation.start(); + } + } + } + SequentialAnimation { id: destroyAnimation ParallelAnimation { @@ -62,12 +72,23 @@ WlShellSurfaceItem { ScriptAction { script: { rootChrome.destroy(); } } } + SequentialAnimation { + id: receivedFocusAnimation + ParallelAnimation { + NumberAnimation { target: scaleTransform; property: "yScale"; to: 1.02; duration: 100; easing.type: Easing.OutQuad } + NumberAnimation { target: scaleTransform; property: "xScale"; to: 1.02; duration: 100; easing.type: Easing.OutQuad } + } + ParallelAnimation { + NumberAnimation { target: scaleTransform; property: "yScale"; to: 1; duration: 100; easing.type: Easing.InOutQuad } + NumberAnimation { target: scaleTransform; property: "xScale"; to: 1; duration: 100; easing.type: Easing.InOutQuad } + } + } + transform: [ Scale { id:scaleTransform origin.x: rootChrome.width / 2 origin.y: rootChrome.height / 2 - } ] } diff --git a/examples/wayland/pure-qml/qml/XdgChrome.qml b/examples/wayland/pure-qml/qml/XdgChrome.qml deleted file mode 100644 index afe137c68..000000000 --- a/examples/wayland/pure-qml/qml/XdgChrome.qml +++ /dev/null @@ -1,90 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: http://www.qt-project.org/legal -** -** This file is part of the examples of the Qt Toolkit. -** -** $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$ -** -****************************************************************************/ - -import QtQuick 2.0 -import QtWayland.Compositor 1.0 - -XdgSurfaceItem { - id: rootChrome - - xdgSurface: XdgSurface { - id: xdgSurface - onActivatedChanged: { - if (xdgSurface.activated) { - receivedFocusAnimation.start(); - } - } - } - - onSurfaceDestroyed: { - view.bufferLock = true; - destroyAnimation.start(); - } - - SequentialAnimation { - id: receivedFocusAnimation - ParallelAnimation { - NumberAnimation { target: scaleTransform; property: "yScale"; to: 1.02; duration: 100; easing.type: Easing.OutQuad } - NumberAnimation { target: scaleTransform; property: "xScale"; to: 1.02; duration: 100; easing.type: Easing.OutQuad } - } - ParallelAnimation { - NumberAnimation { target: scaleTransform; property: "yScale"; to: 1; duration: 100; easing.type: Easing.InOutQuad } - NumberAnimation { target: scaleTransform; property: "xScale"; to: 1; duration: 100; easing.type: Easing.InOutQuad } - } - } - - SequentialAnimation { - id: destroyAnimation - ParallelAnimation { - NumberAnimation { target: scaleTransform; property: "yScale"; to: 2/height; duration: 150 } - NumberAnimation { target: scaleTransform; property: "xScale"; to: 0.4; duration: 150 } - } - NumberAnimation { target: scaleTransform; property: "xScale"; to: 0; duration: 150 } - ScriptAction { script: { rootChrome.destroy(); } } - } - - transform: [ - Scale { - id: scaleTransform - origin.x: rootChrome.width / 2 - origin.y: rootChrome.height / 2 - } - ] -} diff --git a/examples/wayland/pure-qml/qml/main.qml b/examples/wayland/pure-qml/qml/main.qml index c50d4b67d..6ee09f802 100644 --- a/examples/wayland/pure-qml/qml/main.qml +++ b/examples/wayland/pure-qml/qml/main.qml @@ -57,12 +57,6 @@ WaylandCompositor { } Component { - id: xdgChromeComponent - XdgChrome { - } - } - - Component { id: surfaceComponent WaylandSurface { } @@ -74,17 +68,13 @@ WaylandCompositor { onShowIsFullScreenChanged: console.debug("Show is fullscreen hint for Qt applications:", showIsFullScreen) }, WlShell { - id: defaultShell - onShellSurfaceCreated: { chromeComponent.createObject(defaultOutput.surfaceArea, { "shellSurface": shellSurface } ); } }, XdgShell { - id: xdgShell - onXdgSurfaceCreated: { - xdgChromeComponent.createObject(defaultOutput.surfaceArea, { "xdgSurface": xdgSurface } ); + chromeComponent.createObject(defaultOutput.surfaceArea, { "shellSurface": xdgSurface } ); } }, TextInputManager { |