summaryrefslogtreecommitdiffstats
path: root/examples/wayland/multi-output/qml/ShellScreen.qml
blob: ae4092594258b6abf503191f969bb36451e188f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// Copyright (C) 2017 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause

import QtQuick
import QtQuick.Window
import QtWayland.Compositor
import QtWayland.Compositor.XdgShell

WaylandOutput {
    id: output
    property alias surfaceArea: background

    sizeFollowsWindow: true
    window: Window {
        width: 1024
        height: 760
        visible: true

        WaylandMouseTracker {
            id: mouseTracker
            anchors.fill: parent

            windowSystemCursorEnabled: !clientCursor.visible
            Image {
                id: background
                anchors.fill: parent
                fillMode: Image.Tile
                source: "qrc:/images/background.jpg"
                smooth: true
            }
            WaylandCursorItem {
                id: clientCursor
                x: mouseTracker.mouseX
                y: mouseTracker.mouseY
                visible: surface !== null && mouseTracker.containsMouse
                seat : output.compositor.defaultSeat
            }
        }
    }

    XdgOutputV1 {
        name: "WL-1"
        description: "Screen with window management"
        logicalPosition: output.position
        logicalSize: Qt.size(output.geometry.width / output.scaleFactor,
                             output.geometry.height / output.scaleFactor)
    }
}