forked from Shinonome/dots-hyprland
screen translator: open on focused monitor
This commit is contained in:
@@ -11,12 +11,27 @@ Scope {
|
|||||||
function dismiss() {
|
function dismiss() {
|
||||||
GlobalStates.screenTranslatorOpen = false
|
GlobalStates.screenTranslatorOpen = false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
readonly property var currentScreen: Quickshell.screens.find(s => s.name === Hyprland.focusedMonitor?.name) ?? null
|
||||||
|
|
||||||
Loader {
|
Loader {
|
||||||
id: translatorLoader
|
id: translatorLoader
|
||||||
active: GlobalStates.screenTranslatorOpen
|
property var lockedScreen
|
||||||
|
active: false
|
||||||
|
Connections {
|
||||||
|
target: GlobalStates
|
||||||
|
function onScreenTranslatorOpenChanged() {
|
||||||
|
if (!GlobalStates.screenTranslatorOpen) {
|
||||||
|
translatorLoader.active = false;
|
||||||
|
} else {
|
||||||
|
translatorLoader.lockedScreen = root.currentScreen
|
||||||
|
translatorLoader.active = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
sourceComponent: ScreenTranslatorPanel {
|
sourceComponent: ScreenTranslatorPanel {
|
||||||
|
screen: translatorLoader.lockedScreen
|
||||||
onDismiss: root.dismiss()
|
onDismiss: root.dismiss()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user