forked from Shinonome/dots-hyprland
left sidebar: add detach/attach instructions + keybind
This commit is contained in:
@@ -19,8 +19,9 @@ bind = Super, mouse_down,global, quickshell:overviewToggleReleaseInterrupt # [hi
|
|||||||
bindit = ,Super_L, global, quickshell:workspaceNumber # [hidden]
|
bindit = ,Super_L, global, quickshell:workspaceNumber # [hidden]
|
||||||
bindd = Super, V, Clipboard history >> clipboard, global, quickshell:overviewClipboardToggle # Clipboard history >> clipboard
|
bindd = Super, V, Clipboard history >> clipboard, global, quickshell:overviewClipboardToggle # Clipboard history >> clipboard
|
||||||
bindd = Super, Tab, Toggle overview, global, quickshell:overviewToggle # [hidden] Toggle overview/launcher (alt)
|
bindd = Super, Tab, Toggle overview, global, quickshell:overviewToggle # [hidden] Toggle overview/launcher (alt)
|
||||||
bind = Super, B, global, quickshell:sidebarLeftToggle # [hidden]
|
|
||||||
bindd = Super, A, Toggle left sidebar, global, quickshell:sidebarLeftToggle # Toggle left sidebar
|
bindd = Super, A, Toggle left sidebar, global, quickshell:sidebarLeftToggle # Toggle left sidebar
|
||||||
|
bind = Super+Alt, A, global, quickshell:sidebarLeftToggleDetach # [hidden]
|
||||||
|
bind = Super, B, global, quickshell:sidebarLeftToggle # [hidden]
|
||||||
bind = Super, O, global, quickshell:sidebarLeftToggle # [hidden]
|
bind = Super, O, global, quickshell:sidebarLeftToggle # [hidden]
|
||||||
bindd = Super, N, Toggle right sidebar, global, quickshell:sidebarRightToggle # Toggle right sidebar
|
bindd = Super, N, Toggle right sidebar, global, quickshell:sidebarRightToggle # Toggle right sidebar
|
||||||
bindd = Super, Slash, Toggle cheatsheet, global, quickshell:cheatsheetToggle # Toggle cheatsheet
|
bindd = Super, Slash, Toggle cheatsheet, global, quickshell:cheatsheetToggle # Toggle cheatsheet
|
||||||
|
|||||||
@@ -215,18 +215,28 @@ int main(int argc, char* argv[]) {
|
|||||||
|
|
||||||
MaterialSymbol {
|
MaterialSymbol {
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
iconSize: 55
|
iconSize: 60
|
||||||
color: Appearance.m3colors.m3outline
|
color: Appearance.m3colors.m3outline
|
||||||
text: "neurology"
|
text: "neurology"
|
||||||
}
|
}
|
||||||
StyledText {
|
StyledText {
|
||||||
id: widgetNameText
|
id: widgetNameText
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
font.pixelSize: Appearance.font.pixelSize.normal
|
font.pixelSize: Appearance.font.pixelSize.larger
|
||||||
|
font.family: Appearance.font.family.title
|
||||||
color: Appearance.m3colors.m3outline
|
color: Appearance.m3colors.m3outline
|
||||||
horizontalAlignment: Text.AlignHCenter
|
horizontalAlignment: Text.AlignHCenter
|
||||||
text: qsTr("Large language models")
|
text: qsTr("Large language models")
|
||||||
}
|
}
|
||||||
|
StyledText {
|
||||||
|
id: widgetDescriptionText
|
||||||
|
Layout.fillWidth: true
|
||||||
|
font.pixelSize: Appearance.font.pixelSize.small
|
||||||
|
color: Appearance.m3colors.m3outline
|
||||||
|
horizontalAlignment: Text.AlignLeft
|
||||||
|
wrapMode: Text.Wrap
|
||||||
|
text: qsTr("Ctrl+O to expand the sidebar\nCtrl+P to detach sidebar into a window")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -205,14 +205,14 @@ Item {
|
|||||||
|
|
||||||
MaterialSymbol {
|
MaterialSymbol {
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
iconSize: 55
|
iconSize: 60
|
||||||
color: Appearance.m3colors.m3outline
|
color: Appearance.m3colors.m3outline
|
||||||
text: "bookmark_heart"
|
text: "bookmark_heart"
|
||||||
}
|
}
|
||||||
StyledText {
|
StyledText {
|
||||||
id: widgetNameText
|
id: widgetNameText
|
||||||
Layout.alignment: Qt.AlignHCenter
|
Layout.alignment: Qt.AlignHCenter
|
||||||
font.pixelSize: Appearance.font.pixelSize.normal
|
font.pixelSize: Appearance.font.pixelSize.larger
|
||||||
color: Appearance.m3colors.m3outline
|
color: Appearance.m3colors.m3outline
|
||||||
horizontalAlignment: Text.AlignHCenter
|
horizontalAlignment: Text.AlignHCenter
|
||||||
text: qsTr("Anime boorus")
|
text: qsTr("Anime boorus")
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ Scope { // Scope
|
|||||||
property int sidebarPadding: 15
|
property int sidebarPadding: 15
|
||||||
property var tabButtonList: [{"icon": "neurology", "name": qsTr("Intelligence")}, {"icon": "bookmark_heart", "name": qsTr("Anime")}]
|
property var tabButtonList: [{"icon": "neurology", "name": qsTr("Intelligence")}, {"icon": "bookmark_heart", "name": qsTr("Anime")}]
|
||||||
property int selectedTab: 0
|
property int selectedTab: 0
|
||||||
property bool pin: false
|
property bool detach: false
|
||||||
property Component contentComponent: SidebarLeftContent {}
|
property Component contentComponent: SidebarLeftContent {}
|
||||||
property Item sidebarContent
|
property Item sidebarContent
|
||||||
|
|
||||||
@@ -29,8 +29,8 @@ Scope { // Scope
|
|||||||
sidebarLoader.item.contentParent.children = [root.sidebarContent];
|
sidebarLoader.item.contentParent.children = [root.sidebarContent];
|
||||||
}
|
}
|
||||||
|
|
||||||
onPinChanged: {
|
onDetachChanged: {
|
||||||
if (root.pin) {
|
if (root.detach) {
|
||||||
sidebarContent.parent = null; // Detach content from sidebar
|
sidebarContent.parent = null; // Detach content from sidebar
|
||||||
sidebarLoader.active = false; // Unload sidebar
|
sidebarLoader.active = false; // Unload sidebar
|
||||||
detachedSidebarLoader.active = true; // Load detached window
|
detachedSidebarLoader.active = true; // Load detached window
|
||||||
@@ -117,7 +117,7 @@ Scope { // Scope
|
|||||||
sidebarRoot.extend = !sidebarRoot.extend;
|
sidebarRoot.extend = !sidebarRoot.extend;
|
||||||
}
|
}
|
||||||
else if (event.key === Qt.Key_P) {
|
else if (event.key === Qt.Key_P) {
|
||||||
root.pin = !root.pin;
|
root.detach = !root.detach;
|
||||||
}
|
}
|
||||||
event.accepted = true;
|
event.accepted = true;
|
||||||
}
|
}
|
||||||
@@ -143,7 +143,7 @@ Scope { // Scope
|
|||||||
Keys.onPressed: (event) => {
|
Keys.onPressed: (event) => {
|
||||||
if (event.modifiers === Qt.ControlModifier) {
|
if (event.modifiers === Qt.ControlModifier) {
|
||||||
if (event.key === Qt.Key_P) {
|
if (event.key === Qt.Key_P) {
|
||||||
root.pin = !root.pin;
|
root.detach = !root.detach;
|
||||||
}
|
}
|
||||||
event.accepted = true;
|
event.accepted = true;
|
||||||
}
|
}
|
||||||
@@ -195,4 +195,13 @@ Scope { // Scope
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GlobalShortcut {
|
||||||
|
name: "sidebarLeftToggleDetach"
|
||||||
|
description: qsTr("Detach left sidebar into a window/Attach it back")
|
||||||
|
|
||||||
|
onPressed: {
|
||||||
|
root.detach = !root.detach;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user