stay above osk

This commit is contained in:
2026-08-01 17:48:39 +02:00
parent 052a41ad21
commit 18c00d40b4
5 changed files with 43 additions and 13 deletions
+15 -4
View File
@@ -30,9 +30,19 @@ PanelWindow {
top: true
bottom: true
}
exclusionMode: ExclusionMode.Ignore
// Reserve nothing, but stay inside what everything else has reserved: the
// surface then ends at the top of the bar, and at the top of an on-screen
// keyboard like squeekboard whenever one is up, so the menu rises with it
// instead of opening underneath. `Ignore` would cover the whole output.
exclusionMode: ExclusionMode.Normal
exclusiveZone: 0
color: "transparent"
// What is left of the bar to step over by hand. Nothing, normally — the
// exclusive zone above already takes it out of the surface. Only a bar
// configured not to reserve space still overlaps.
readonly property int barInset: Config.reserveSpace ? 0 : Theme.barHeight
// ---- Data ------------------------------------------------------------
readonly property var categories: ["All", "Development", "Games", "Graphics", "Internet", "Multimedia", "Office", "Science", "System", "Utility", "Other"]
@@ -129,13 +139,14 @@ PanelWindow {
left: parent.left
bottom: parent.bottom
leftMargin: Theme.padding
bottomMargin: Theme.barHeight + Theme.padding
bottomMargin: root.barInset + Theme.padding
}
// Never taller or wider than the screen, so a rotated or small output
// Never taller or wider than the space the compositor gave us, so a
// rotated or small output — or one with a keyboard taking half of it —
// still shows a usable menu.
width: Math.min(Config.launcherWidth, root.width - Theme.padding * 2)
height: Math.min(Config.launcherHeight, root.height - Theme.barHeight - Theme.padding * 2)
height: Math.min(Config.launcherHeight, root.height - root.barInset - Theme.padding * 2)
color: Theme.surface
radius: Theme.radius * 2