Changeset View
Changeset View
Standalone View
Standalone View
src/contents/ui/Main.qml
| Show All 16 Lines | |||||
| Kirigami.ApplicationWindow { | Kirigami.ApplicationWindow { | ||||
| id: root | id: root | ||||
| property var kazvIOManager: MK.KazvIOManager { | property var kazvIOManager: MK.KazvIOManager { | ||||
| cacheDirectory: kazvConfig.cacheDirectory | cacheDirectory: kazvConfig.cacheDirectory | ||||
| } | } | ||||
| property bool loadingSession: false | |||||
| property var matrixSdk: MK.MatrixSdk { | property var matrixSdk: MK.MatrixSdk { | ||||
| onLoginSuccessful: { | onLoginSuccessful: { | ||||
| switchToMainPage(); | switchToMainPage(); | ||||
| recordLastSession(); | recordLastSession(); | ||||
| } | } | ||||
| onLoginFailed: { | onLoginFailed: { | ||||
| console.log("Login Failed"); | console.log("Login Failed"); | ||||
| showPassiveNotification(l10n.get('login-page-request-failed-prompt', { errorCode, errorMsg })); | showPassiveNotification(l10n.get('login-page-request-failed-prompt', { errorCode, errorMsg })); | ||||
| Show All 11 Lines | onLogoutSuccessful: { | ||||
| root.mainPage = Qt.createComponent("MainPage.qml").createObject(root); | root.mainPage = Qt.createComponent("MainPage.qml").createObject(root); | ||||
| pageStack.clear(); | pageStack.clear(); | ||||
| pushLoginPage(); | pushLoginPage(); | ||||
| } | } | ||||
| onLogoutFailed: { | onLogoutFailed: { | ||||
| console.warn('Logout failed'); | console.warn('Logout failed'); | ||||
| showPassiveNotification(l10n.get('logout-failed-prompt', { errorCode, errorMsg })); | showPassiveNotification(l10n.get('logout-failed-prompt', { errorCode, errorMsg })); | ||||
| } | } | ||||
| onLoadSessionFinished: (sessionName, res) => { | |||||
| root.loadingSession = false; | |||||
| if (res === MK.MatrixSdk.SessionLoadSuccess) { | |||||
| console.log('load session successful'); | |||||
| switchToMainPage(); | |||||
| recordLastSession(); | |||||
| matrixSdk.getSpecVersions(); | |||||
| } else { | |||||
| showPassiveNotification(getSessionLoadError(res, sessionName)); | |||||
| } | } | ||||
| } | |||||
| } | |||||
| property var loggedIn: !!matrixSdk.token | property var loggedIn: !!matrixSdk.token | ||||
| property var sdkVars: QtObject { | property var sdkVars: QtObject { | ||||
| property var roomList: matrixSdk.roomList() | property var roomList: matrixSdk.roomList() | ||||
| property var userGivenNicknameMap: matrixSdk.userGivenNicknameMap() | property var userGivenNicknameMap: matrixSdk.userGivenNicknameMap() | ||||
| property string currentRoomId: '' | property string currentRoomId: '' | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 251 Lines • ▼ Show 20 Lines | case MK.MatrixSdk.SessionDeserializeFailed: | ||||
| return l10n.get('session-load-failure-deserialize-failed', { sessionName }); | return l10n.get('session-load-failure-deserialize-failed', { sessionName }); | ||||
| default: | default: | ||||
| console.error('loadSession: Encountered an unknown error code'); | console.error('loadSession: Encountered an unknown error code'); | ||||
| } | } | ||||
| } | } | ||||
| function loadSession(sessionName) { | function loadSession(sessionName) { | ||||
| const res = matrixSdk.loadSession(sessionName); | root.loadingSession = true; | ||||
| matrixSdk.loadSession(sessionName); | |||||
| if (res === MK.MatrixSdk.SessionLoadSuccess) { | |||||
| console.log('load session successful'); | |||||
| switchToMainPage(); | |||||
| recordLastSession(); | |||||
| matrixSdk.getSpecVersions(); | |||||
| } else { | |||||
| showPassiveNotification(getSessionLoadError(res, sessionName)); | |||||
| } | } | ||||
| return res; | |||||
| } | |||||
| function loadLastSession() { | function loadLastSession() { | ||||
| console.log('last session is:', kazvConfig.lastSession); | console.log('last session is:', kazvConfig.lastSession); | ||||
| return loadSession(kazvConfig.lastSession); | return loadSession(kazvConfig.lastSession); | ||||
| } | } | ||||
| function recordLastSession() { | function recordLastSession() { | ||||
| kazvConfig.lastSession = sessionNameFor(matrixSdk.userId, matrixSdk.deviceId); | kazvConfig.lastSession = sessionNameFor(matrixSdk.userId, matrixSdk.deviceId); | ||||
| } | } | ||||
| function reloadSdkVariables() { | function reloadSdkVariables() { | ||||
| Show All 22 Lines | |||||