mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-05 21:15:38 -05:00
386 lines
9.5 KiB
QML
386 lines
9.5 KiB
QML
import QtQuick
|
|
import qs.Common
|
|
import qs.Modules.Settings
|
|
|
|
FocusScope {
|
|
id: root
|
|
|
|
property int currentIndex: 0
|
|
property var parentModal: null
|
|
|
|
focus: true
|
|
|
|
Rectangle {
|
|
anchors.fill: parent
|
|
anchors.leftMargin: Theme.spacingS
|
|
anchors.rightMargin: (parentModal && parentModal.isCompactMode) ? Theme.spacingS : (32 + Theme.spacingS)
|
|
anchors.bottomMargin: 0
|
|
anchors.topMargin: 0
|
|
color: "transparent"
|
|
|
|
Loader {
|
|
id: wallpaperLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 0
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: Component {
|
|
WallpaperTab {
|
|
parentModal: root.parentModal
|
|
}
|
|
}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: timeWeatherLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 1
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: TimeWeatherTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: keybindsLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 2
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: KeybindsTab {
|
|
parentModal: root.parentModal
|
|
}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: topBarLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 3
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: DankBarTab {
|
|
parentModal: root.parentModal
|
|
}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: workspacesLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 4
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: WorkspacesTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: dockLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 5
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: Component {
|
|
DockTab {}
|
|
}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: displaysLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 6
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: DisplaysTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: networkLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 7
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: NetworkTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: printerLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 8
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: PrinterTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: launcherLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 9
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: LauncherTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: themeColorsLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 10
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: ThemeColorsTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: lockScreenLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 11
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: LockScreenTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: pluginsLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 12
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: PluginsTab {
|
|
parentModal: root.parentModal
|
|
}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: aboutLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 13
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: AboutTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: typographyMotionLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 14
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: TypographyMotionTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: soundsLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 15
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: SoundsTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: mediaPlayerLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 16
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: MediaPlayerTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: notificationsLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 17
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: NotificationsTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: osdLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 18
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: OSDTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: runningAppsLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 19
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: RunningAppsTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: systemUpdaterLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 20
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: SystemUpdaterTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: powerSleepLoader
|
|
anchors.fill: parent
|
|
active: root.currentIndex === 21
|
|
visible: active
|
|
focus: active
|
|
|
|
sourceComponent: PowerSleepTab {}
|
|
|
|
onActiveChanged: {
|
|
if (active && item) {
|
|
Qt.callLater(() => item.forceActiveFocus());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|