mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-01-24 13:32:50 -05:00
Fixes for better Virtual keyboard support and Workspace Switcher (#155)
* Disabling workspace animation if too many icons * Fixed virtual keyboard on popups and modals - Fixed VK sometimes appearing under popups and modals (that made the keyboard unusable) - Fixed VK not working on app drawer - Left comments for future changes * Added explanation for disabling animation * Fixes comments
This commit is contained in:
committed by
GitHub
parent
eecbd8c733
commit
e64124cce3
@@ -60,7 +60,7 @@ PanelWindow {
|
||||
|
||||
visible: shouldBeVisible
|
||||
color: "transparent"
|
||||
WlrLayershell.layer: WlrLayershell.Overlay
|
||||
WlrLayershell.layer: WlrLayershell.Top // if set to overlay -> virtual keyboards can be stuck under modal
|
||||
WlrLayershell.exclusiveZone: -1
|
||||
WlrLayershell.keyboardFocus: shouldHaveFocus ? WlrKeyboardFocus.Exclusive : WlrKeyboardFocus.None
|
||||
onVisibleChanged: {
|
||||
|
||||
@@ -15,6 +15,9 @@ DankPopout {
|
||||
property string triggerSection: "left"
|
||||
property var triggerScreen: null
|
||||
|
||||
// Setting to Exclusive, so virtual keyboards can send input to app drawer
|
||||
WlrLayershell.keyboardFocus: shouldBeVisible ? WlrKeyboardFocus.Exclusive : WlrKeyboardFocus.None
|
||||
|
||||
function show() {
|
||||
open()
|
||||
}
|
||||
|
||||
@@ -372,6 +372,8 @@ Rectangle {
|
||||
}
|
||||
|
||||
Behavior on width {
|
||||
// When having more icons, animation becomes clunky
|
||||
enabled: (!SettingsData.showWorkspaceApps || SettingsData.maxWorkspaceIcons <= 3)
|
||||
NumberAnimation {
|
||||
duration: Theme.mediumDuration
|
||||
easing.type: Theme.emphasizedEasing
|
||||
@@ -379,6 +381,8 @@ Rectangle {
|
||||
}
|
||||
|
||||
Behavior on color {
|
||||
// When having more icons, animation becomes clunky
|
||||
enabled: (!SettingsData.showWorkspaceApps || SettingsData.maxWorkspaceIcons <= 3)
|
||||
ColorAnimation {
|
||||
duration: Theme.mediumDuration
|
||||
easing.type: Theme.emphasizedEasing
|
||||
|
||||
@@ -54,9 +54,17 @@ PanelWindow {
|
||||
}
|
||||
|
||||
color: "transparent"
|
||||
WlrLayershell.layer: WlrLayershell.Overlay
|
||||
WlrLayershell.layer: WlrLayershell.Top // if set to overlay -> virtual keyboards can be stuck under popup
|
||||
WlrLayershell.exclusiveZone: -1
|
||||
WlrLayershell.keyboardFocus: shouldBeVisible ? WlrKeyboardFocus.OnDemand : WlrKeyboardFocus.None
|
||||
|
||||
// WlrLayershell.keyboardFocus should be set to Exclusive,
|
||||
// if popup contains input fields and does NOT create new popups/modals
|
||||
// with input fields.
|
||||
// With OnDemand virtual keyboards can't send input to popup
|
||||
// If set to Exclusive AND this popup creates other popups, that also have
|
||||
// input fields -> they can't get keyboard focus, because the parent popup
|
||||
// already took the lock
|
||||
WlrLayershell.keyboardFocus: shouldBeVisible ? WlrKeyboardFocus.OnDemand : WlrKeyboardFocus.None
|
||||
|
||||
anchors {
|
||||
top: true
|
||||
|
||||
Reference in New Issue
Block a user