diff options
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/background/Border.qml | 6 | ||||
| -rw-r--r-- | modules/osd/Osd.qml | 12 |
2 files changed, 18 insertions, 0 deletions
diff --git a/modules/background/Border.qml b/modules/background/Border.qml index e944299..143097a 100644 --- a/modules/background/Border.qml +++ b/modules/background/Border.qml @@ -68,6 +68,12 @@ Scope { LayerShadow { source: effect } + + MouseArea { + anchors.fill: parent + hoverEnabled: true + onPositionChanged: event => Drawers.setPosForScreen(root.screen, event.x, event.y) + } } ExclusionZone { diff --git a/modules/osd/Osd.qml b/modules/osd/Osd.qml index 009eb2f..f16b396 100644 --- a/modules/osd/Osd.qml +++ b/modules/osd/Osd.qml @@ -12,6 +12,7 @@ Variants { required property ShellScreen modelData readonly property Brightness.Monitor monitor: Brightness.getMonitorForScreen(modelData) + property int winHeight property bool osdVisible property bool hovered @@ -50,6 +51,15 @@ Variants { } } + Connections { + target: Drawers + + function onPosChanged(screen: ShellScreen, x: int, y: int): void { + if (screen === root.modelData && x > screen.width / 2 && y > (screen.height - root.winHeight) / 2 && y < (screen.height + root.winHeight) / 2) + root.show(); + } + } + LazyLoader { loading: true @@ -68,6 +78,8 @@ Variants { anchors.right: true height: wrapper.height + Component.onCompleted: root.winHeight = height + Background { id: bg |