diff --git a/quickshell/Modals/Clipboard/ClipboardConstants.qml b/quickshell/Modals/Clipboard/ClipboardConstants.qml index 8850b95a..86f8bd4d 100644 --- a/quickshell/Modals/Clipboard/ClipboardConstants.qml +++ b/quickshell/Modals/Clipboard/ClipboardConstants.qml @@ -15,5 +15,5 @@ Singleton { readonly property int viewportBuffer: 100 readonly property int extendedBuffer: 200 readonly property int keyboardHintsHeight: 80 - readonly property int headerHeight: 40 + readonly property int headerHeight: 32 } diff --git a/quickshell/Modals/Clipboard/ClipboardContent.qml b/quickshell/Modals/Clipboard/ClipboardContent.qml index fd5681ae..d9772e2a 100644 --- a/quickshell/Modals/Clipboard/ClipboardContent.qml +++ b/quickshell/Modals/Clipboard/ClipboardContent.qml @@ -16,8 +16,8 @@ Item { Column { anchors.fill: parent - anchors.margins: Theme.spacingL - spacing: Theme.spacingL + anchors.margins: Theme.spacingM + spacing: Theme.spacingM focus: false ClipboardHeader { @@ -195,7 +195,7 @@ Item { Item { id: keyboardHintsContainer width: parent.width - height: modal.showKeyboardHints ? ClipboardConstants.keyboardHintsHeight + Theme.spacingL : 0 + height: modal.showKeyboardHints ? ClipboardConstants.keyboardHintsHeight + Theme.spacingM : 0 Behavior on height { NumberAnimation { @@ -210,7 +210,7 @@ Item { anchors.bottom: parent.bottom anchors.left: parent.left anchors.right: parent.right - anchors.margins: Theme.spacingL + anchors.margins: Theme.spacingM visible: modal.showKeyboardHints wtypeAvailable: modal.wtypeAvailable } diff --git a/quickshell/Modals/DankLauncherV2/DankLauncherV2Modal.qml b/quickshell/Modals/DankLauncherV2/DankLauncherV2Modal.qml index f1914d79..de0d3056 100644 --- a/quickshell/Modals/DankLauncherV2/DankLauncherV2Modal.qml +++ b/quickshell/Modals/DankLauncherV2/DankLauncherV2Modal.qml @@ -9,6 +9,8 @@ import qs.Widgets Item { id: root + visible: false + property bool spotlightOpen: false property bool keyboardActive: false property bool contentVisible: false @@ -22,8 +24,8 @@ Item { readonly property real screenHeight: effectiveScreen?.height ?? 1080 readonly property real dpr: effectiveScreen ? CompositorService.getScreenScale(effectiveScreen) : 1 - readonly property int baseWidth: SettingsData.dankLauncherV2Size === "medium" ? 600 : SettingsData.dankLauncherV2Size === "large" ? 720 : 500 - readonly property int baseHeight: SettingsData.dankLauncherV2Size === "medium" ? 680 : SettingsData.dankLauncherV2Size === "large" ? 820 : 560 + readonly property int baseWidth: SettingsData.dankLauncherV2Size === "medium" ? 720 : SettingsData.dankLauncherV2Size === "large" ? 860 : 620 + readonly property int baseHeight: SettingsData.dankLauncherV2Size === "medium" ? 720 : SettingsData.dankLauncherV2Size === "large" ? 860 : 600 readonly property int modalWidth: Math.min(baseWidth, screenWidth - 100) readonly property int modalHeight: Math.min(baseHeight, screenHeight - 100) readonly property real modalX: (screenWidth - modalWidth) / 2 @@ -165,6 +167,27 @@ Item { } } + Connections { + target: Quickshell + function onScreensChanged() { + if (!launcherWindow.screen) + return; + const currentScreenName = launcherWindow.screen.name; + let screenStillExists = false; + for (let i = 0; i < Quickshell.screens.length; i++) { + if (Quickshell.screens[i].name === currentScreenName) { + screenStillExists = true; + break; + } + } + if (screenStillExists) + return; + const newScreen = CompositorService.getFocusedScreen(); + if (newScreen) + launcherWindow.screen = newScreen; + } + } + PanelWindow { id: launcherWindow visible: true diff --git a/quickshell/Modals/DankLauncherV2/LauncherContent.qml b/quickshell/Modals/DankLauncherV2/LauncherContent.qml index 131e41ac..1ef16ffb 100644 --- a/quickshell/Modals/DankLauncherV2/LauncherContent.qml +++ b/quickshell/Modals/DankLauncherV2/LauncherContent.qml @@ -282,26 +282,22 @@ FocusScope { { id: "all", label: I18n.tr("All"), - icon: "search", - shortcut: "⌃1" + icon: "search" }, { id: "apps", label: I18n.tr("Apps"), - icon: "apps", - shortcut: "⌃2" + icon: "apps" }, { id: "files", label: I18n.tr("Files"), - icon: "folder", - shortcut: "⌃3" + icon: "folder" }, { id: "plugins", label: I18n.tr("Plugins"), - icon: "extension", - shortcut: "⌃4" + icon: "extension" } ] @@ -309,7 +305,7 @@ FocusScope { required property var modelData required property int index - width: modeButtonMetrics.width + Theme.spacingM * 2 + width: modeButtonMetrics.width + 14 + Theme.spacingXS + Theme.spacingM * 2 + Theme.spacingS height: footerBar.height - 4 radius: Theme.cornerRadius - 2 color: controller.searchMode === modelData.id || modeArea.containsMouse ? Theme.primaryContainer : "transparent" @@ -317,7 +313,7 @@ FocusScope { TextMetrics { id: modeButtonMetrics font.pixelSize: Theme.fontSizeSmall - text: modelData.label + " " + modelData.shortcut + text: modelData.label } Row { @@ -335,12 +331,6 @@ FocusScope { font.pixelSize: Theme.fontSizeSmall color: controller.searchMode === modelData.id ? Theme.primary : Theme.surfaceText } - - StyledText { - text: modelData.shortcut - font.pixelSize: Theme.fontSizeSmall - 2 - color: Theme.surfaceVariantText - } } MouseArea { @@ -395,15 +385,13 @@ FocusScope { Row { width: parent.width - height: 56 spacing: Theme.spacingS Rectangle { id: pluginBadge visible: controller.activePluginName.length > 0 width: visible ? pluginBadgeContent.implicitWidth + Theme.spacingM : 0 - height: 32 - anchors.verticalCenter: parent.verticalCenter + height: searchField.height radius: 16 color: Theme.primary @@ -439,7 +427,6 @@ FocusScope { DankTextField { id: searchField width: parent.width - (pluginBadge.visible ? pluginBadge.width + Theme.spacingS : 0) - height: 56 cornerRadius: Theme.cornerRadius backgroundColor: Theme.withAlpha(Theme.surfaceContainerHigh, Theme.popupTransparency) normalBorderColor: Theme.outlineMedium @@ -484,7 +471,7 @@ FocusScope { Item { width: parent.width - height: parent.height - 56 - actionPanel.height - Theme.spacingM - Theme.spacingXS + height: parent.height - searchField.height - actionPanel.height - Theme.spacingXS * 2 opacity: root.parentModal?.isClosing ? 0 : 1 ResultsList { @@ -635,7 +622,6 @@ FocusScope { DankTextField { id: editNameField width: parent.width - height: 44 placeholderText: editingApp?.name || "" keyNavigationTab: editIconField keyNavigationBacktab: editExtraFlagsField @@ -656,7 +642,6 @@ FocusScope { DankTextField { id: editIconField width: parent.width - height: 44 placeholderText: editingApp?.icon || "" keyNavigationTab: editCommentField keyNavigationBacktab: editNameField @@ -677,7 +662,6 @@ FocusScope { DankTextField { id: editCommentField width: parent.width - height: 44 placeholderText: editingApp?.comment || "" keyNavigationTab: editEnvVarsField keyNavigationBacktab: editIconField @@ -704,7 +688,6 @@ FocusScope { DankTextField { id: editEnvVarsField width: parent.width - height: 44 placeholderText: "VAR=value" keyNavigationTab: editExtraFlagsField keyNavigationBacktab: editCommentField @@ -725,7 +708,6 @@ FocusScope { DankTextField { id: editExtraFlagsField width: parent.width - height: 44 placeholderText: "--flag --option=value" keyNavigationTab: editNameField keyNavigationBacktab: editEnvVarsField diff --git a/quickshell/Modals/DankLauncherV2/SectionHeader.qml b/quickshell/Modals/DankLauncherV2/SectionHeader.qml index 2e2cbea8..08e03180 100644 --- a/quickshell/Modals/DankLauncherV2/SectionHeader.qml +++ b/quickshell/Modals/DankLauncherV2/SectionHeader.qml @@ -31,7 +31,7 @@ Rectangle { Row { id: leftContent anchors.left: parent.left - anchors.leftMargin: Theme.spacingS + anchors.leftMargin: Theme.spacingXS anchors.verticalCenter: parent.verticalCenter spacing: Theme.spacingS @@ -61,7 +61,7 @@ Rectangle { Row { id: rightContent anchors.right: parent.right - anchors.rightMargin: Theme.spacingS + anchors.rightMargin: Theme.spacingXS anchors.verticalCenter: parent.verticalCenter spacing: Theme.spacingS diff --git a/quickshell/Modals/Settings/SettingsSidebar.qml b/quickshell/Modals/Settings/SettingsSidebar.qml index b248da55..adbde500 100644 --- a/quickshell/Modals/Settings/SettingsSidebar.qml +++ b/quickshell/Modals/Settings/SettingsSidebar.qml @@ -539,7 +539,7 @@ Rectangle { Item { width: parent.width - parent.leftPadding - parent.rightPadding - height: Theme.spacingS + height: Theme.spacingXS } DankTextField { @@ -717,7 +717,7 @@ Rectangle { Item { width: parent.width - parent.leftPadding - parent.rightPadding - height: Theme.spacingS + height: Theme.spacingXS visible: !root.searchActive } diff --git a/quickshell/Modals/Spotlight/SpotlightContent.qml b/quickshell/Modals/Spotlight/SpotlightContent.qml index b1bd4327..ba7e4687 100644 --- a/quickshell/Modals/Spotlight/SpotlightContent.qml +++ b/quickshell/Modals/Spotlight/SpotlightContent.qml @@ -324,7 +324,6 @@ Item { anchors.left: parent.left anchors.right: buttonsContainer.left anchors.rightMargin: Theme.spacingM - height: 56 cornerRadius: Theme.cornerRadius backgroundColor: Theme.withAlpha(Theme.surfaceContainerHigh, Theme.popupTransparency) normalBorderColor: Theme.outlineMedium @@ -670,7 +669,6 @@ Item { DankTextField { id: editNameField width: parent.width - height: 44 placeholderText: editingApp?.name || "" keyNavigationTab: editIconField keyNavigationBacktab: editExtraFlagsField @@ -691,7 +689,6 @@ Item { DankTextField { id: editIconField width: parent.width - height: 44 placeholderText: editingApp?.icon || "" keyNavigationTab: editCommentField keyNavigationBacktab: editNameField @@ -712,7 +709,6 @@ Item { DankTextField { id: editCommentField width: parent.width - height: 44 placeholderText: editingApp?.comment || "" keyNavigationTab: editEnvVarsField keyNavigationBacktab: editIconField @@ -739,7 +735,6 @@ Item { DankTextField { id: editEnvVarsField width: parent.width - height: 44 placeholderText: "VAR=value" keyNavigationTab: editExtraFlagsField keyNavigationBacktab: editCommentField @@ -760,7 +755,6 @@ Item { DankTextField { id: editExtraFlagsField width: parent.width - height: 44 placeholderText: "--flag --option=value" keyNavigationTab: editNameField keyNavigationBacktab: editEnvVarsField diff --git a/quickshell/Modules/AppDrawer/AppDrawerPopout.qml b/quickshell/Modules/AppDrawer/AppDrawerPopout.qml index cc2c3e60..39b5e350 100644 --- a/quickshell/Modules/AppDrawer/AppDrawerPopout.qml +++ b/quickshell/Modules/AppDrawer/AppDrawerPopout.qml @@ -398,7 +398,6 @@ DankPopout { width: parent.width - Theme.spacingS * 2 anchors.horizontalCenter: parent.horizontalCenter - height: 52 cornerRadius: Theme.cornerRadius backgroundColor: Theme.withAlpha(Theme.surfaceContainerHigh, Theme.popupTransparency) normalBorderColor: Theme.outlineMedium @@ -531,7 +530,7 @@ DankPopout { x: searchField.x height: { let usedHeight = 40 + Theme.spacingS; - usedHeight += 52 + Theme.spacingS; + usedHeight += searchField.height + Theme.spacingS; usedHeight += appDrawerPopout.searchMode === "apps" ? 40 : 0; return parent.height - usedHeight; } @@ -839,7 +838,6 @@ DankPopout { DankTextField { id: editNameField width: parent.width - height: 44 focus: true placeholderText: appDrawerPopout.editingApp?.name || "" keyNavigationTab: editIconField @@ -861,7 +859,6 @@ DankPopout { DankTextField { id: editIconField width: parent.width - height: 44 placeholderText: appDrawerPopout.editingApp?.icon || "" keyNavigationTab: editCommentField keyNavigationBacktab: editNameField @@ -882,7 +879,6 @@ DankPopout { DankTextField { id: editCommentField width: parent.width - height: 44 placeholderText: appDrawerPopout.editingApp?.comment || "" keyNavigationTab: editEnvVarsField keyNavigationBacktab: editIconField @@ -909,7 +905,6 @@ DankPopout { DankTextField { id: editEnvVarsField width: parent.width - height: 44 placeholderText: "VAR=value" keyNavigationTab: editExtraFlagsField keyNavigationBacktab: editCommentField @@ -930,7 +925,6 @@ DankPopout { DankTextField { id: editExtraFlagsField width: parent.width - height: 44 placeholderText: "--flag --option=value" keyNavigationTab: editNameField keyNavigationBacktab: editEnvVarsField diff --git a/quickshell/Modules/Settings/KeybindsTab.qml b/quickshell/Modules/Settings/KeybindsTab.qml index ac6e0d0d..672b1960 100644 --- a/quickshell/Modules/Settings/KeybindsTab.qml +++ b/quickshell/Modules/Settings/KeybindsTab.qml @@ -236,7 +236,6 @@ Item { DankTextField { id: searchField width: parent.width - addButton.width - Theme.spacingM - height: Math.round(Theme.fontSizeMedium * 3) placeholderText: I18n.tr("Search keybinds...") leftIconName: "search" onTextChanged: { diff --git a/quickshell/Modules/Settings/PowerSleepTab.qml b/quickshell/Modules/Settings/PowerSleepTab.qml index f41ee5a3..ac8ebab1 100644 --- a/quickshell/Modules/Settings/PowerSleepTab.qml +++ b/quickshell/Modules/Settings/PowerSleepTab.qml @@ -554,7 +554,6 @@ Item { DankTextField { width: parent.width - height: 48 placeholderText: modelData.placeholder backgroundColor: Theme.withAlpha(Theme.surfaceContainerHighest, Theme.popupTransparency) normalBorderColor: Theme.outlineMedium diff --git a/quickshell/Modules/Settings/SystemUpdaterTab.qml b/quickshell/Modules/Settings/SystemUpdaterTab.qml index c1a55441..15c7baa3 100644 --- a/quickshell/Modules/Settings/SystemUpdaterTab.qml +++ b/quickshell/Modules/Settings/SystemUpdaterTab.qml @@ -69,7 +69,6 @@ Item { DankTextField { id: updaterCustomCommand width: parent.width - height: 48 placeholderText: "myPkgMngr --sysupdate" backgroundColor: Theme.withAlpha(Theme.surfaceContainerHighest, Theme.popupTransparency) normalBorderColor: Theme.outlineMedium @@ -114,7 +113,6 @@ Item { DankTextField { id: updaterTerminalCustomClass width: parent.width - height: 48 placeholderText: "-T udpClass" backgroundColor: Theme.withAlpha(Theme.surfaceContainerHighest, Theme.popupTransparency) normalBorderColor: Theme.outlineMedium diff --git a/quickshell/Widgets/DankTextField.qml b/quickshell/Widgets/DankTextField.qml index d8fdafbc..e5b55034 100644 --- a/quickshell/Widgets/DankTextField.qml +++ b/quickshell/Widgets/DankTextField.qml @@ -35,15 +35,15 @@ StyledRect { property real cornerRadius: Theme.cornerRadius readonly property real leftPadding: Theme.spacingM + (leftIconName ? leftIconSize + Theme.spacingM : 0) readonly property real rightPadding: { - let p = Theme.spacingM; + let p = Theme.spacingS; if (showPasswordToggle) - p += 24 + Theme.spacingS; + p += 20 + Theme.spacingXS; if (showClearButton && text.length > 0) - p += 24 + Theme.spacingS; + p += 20 + Theme.spacingXS; return p; } - property real topPadding: Theme.spacingM - property real bottomPadding: Theme.spacingM + property real topPadding: Theme.spacingS + property real bottomPadding: Theme.spacingS property bool ignoreLeftRightKeys: false property bool ignoreUpDownKeys: false property bool ignoreTabKeys: false @@ -76,7 +76,7 @@ StyledRect { } width: 200 - height: Math.round(Theme.fontSizeMedium * 3.4) + height: Math.round(Theme.fontSizeMedium * 3) radius: cornerRadius color: backgroundColor border.color: textInput.activeFocus ? focusedBorderColor : normalBorderColor @@ -164,7 +164,7 @@ StyledRect { id: rightButtonsRow anchors.right: parent.right - anchors.rightMargin: Theme.spacingM + anchors.rightMargin: Theme.spacingS anchors.verticalCenter: parent.verticalCenter spacing: Theme.spacingXS visible: showPasswordToggle || (showClearButton && text.length > 0) @@ -172,16 +172,16 @@ StyledRect { StyledRect { id: passwordToggleButton - width: 24 - height: 24 - radius: 12 + width: 20 + height: 20 + radius: 10 color: passwordToggleArea.containsMouse ? Theme.outlineStrong : "transparent" visible: showPasswordToggle DankIcon { anchors.centerIn: parent name: passwordVisible ? "visibility_off" : "visibility" - size: 16 + size: 14 color: passwordToggleArea.containsMouse ? Theme.outline : Theme.surfaceVariantText } @@ -198,16 +198,16 @@ StyledRect { StyledRect { id: clearButton - width: 24 - height: 24 - radius: 12 + width: 20 + height: 20 + radius: 10 color: clearArea.containsMouse ? Theme.outlineStrong : "transparent" visible: showClearButton && text.length > 0 DankIcon { anchors.centerIn: parent name: "close" - size: 16 + size: 14 color: clearArea.containsMouse ? Theme.outline : Theme.surfaceVariantText }