Warning, /utilities/keysmith/src/contents/ui/main.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 * SPDX-License-Identifier: GPL-3.0-or-later 0003 * SPDX-FileCopyrightText: 2019 Bhushan Shah <bshah@kde.org> 0004 * SPDX-FileCopyrightText: 2019-2021 Johan Ouwerkerk <jm.ouwerkerk@gmail.com> 0005 */ 0006 0007 import QtQml 2.15 0008 import org.kde.kirigami 2.20 as Kirigami 0009 0010 import Keysmith.Application 1.0 as Application 0011 0012 Kirigami.ApplicationWindow { 0013 id: root 0014 0015 width: Kirigami.Units.gridUnit * 20 0016 height: Kirigami.Units.gridUnit * 30 0017 0018 function routeToUrl(route) { 0019 switch (route) { 0020 case Application.Navigation.Error: 0021 return "qrc:/ErrorPage.qml" 0022 case Application.Navigation.UnlockAccounts: 0023 return "qrc:/UnlockAccounts.qml" 0024 case Application.Navigation.RenameAccount: 0025 return "qrc:/RenameAccount.qml" 0026 case Application.Navigation.AccountsOverview: 0027 return "qrc:/AccountsOverview.qml" 0028 case Application.Navigation.AddAccount: 0029 return "qrc:/AddAccount.qml" 0030 case Application.Navigation.SetupPassword: 0031 return "qrc:/SetupPassword.qml" 0032 } 0033 return 'bug'; 0034 } 0035 0036 Connections { 0037 target: Application.Keysmith.navigation 0038 0039 function onRouted(route, data) { 0040 console.log(route, data) 0041 const pageUrl = routeToUrl(route); 0042 while (root.pageStack.depth > 1) { 0043 root.pageStack.pop(); 0044 } 0045 if (root.pageStack.depth === 0) { 0046 root.pageStack.push(pageUrl, { 0047 vm: data, 0048 }); 0049 } else { 0050 root.pageStack.replace(pageUrl, { 0051 vm: data, 0052 }); 0053 } 0054 } 0055 0056 function onPushed(route, data) { 0057 const pageUrl = routeToUrl(route); 0058 root.pageStack.push(pageUrl, { 0059 vm: data, 0060 }); 0061 } 0062 } 0063 }