GODT-22: Frontend-backend

- GODT-1246 Implement settings view.
- GODT-1257 GODT-1246: Account and Help view
- GODT-1298: Minimal working build (panics)
- GODT-1298: loading QML (needs Popup window)
- GODT-1298: WARN: Adding PopupWindow not possible!
    In therecipe qt the `quickwidgets` classes are within `quick` module, but
    forgot to add library and include paths into cgo flags. Therefore
    compilation fails and it would be hard to patch therecipe in order to
    fix it.

    I am not sure if rewrite PopupWindow into go would make any difference,
    therefore I decided to use normal QML Window without borders.
- GODT-1298: Rework status window, add backend props, slots and signals.
- GODT-1298: Users
- GODT-1298: Login
- GODT-1298: WIP Help and bug report
- GODT-1178: MacOS dock icon control
- GODT-1298: Help, bug report, update and events
- GODT-1298: Apple Mail config and Settings (without cache on disk)
This commit is contained in:
Jakub
2021-08-09 14:40:56 +02:00
parent 0a9748a15d
commit e0d07d67a0
76 changed files with 4730 additions and 398 deletions

View File

@ -62,7 +62,7 @@ ApplicationWindow {
return
}
root.showSetup(user)
root.showSetup(user,user.addresses[0])
}
onRowsAboutToBeRemoved: {
@ -78,15 +78,6 @@ ApplicationWindow {
}
}
function showSetup(user) {
setupGuide.user = user
if (setupGuide.user) {
contentLayout._showSetup = true
} else {
contentLayout._showSetup = false
}
}
StackLayout {
id: contentLayout
@ -111,12 +102,18 @@ ApplicationWindow {
}
ContentWrapper {
id: contentWrapper
colorScheme: root.colorScheme
backend: root.backend
notifications: root.notifications
Layout.fillHeight: true
Layout.fillWidth: true
onShowSetupGuide: {
root.showSetup(user,address)
}
onLogin: {
root.login(username, password)
}
@ -161,7 +158,7 @@ ApplicationWindow {
Layout.fillWidth: true
onDismissed: {
root.showSetup(null)
root.showSetup(null,"")
}
}
}
@ -169,5 +166,25 @@ ApplicationWindow {
NotificationPopups {
colorScheme: root.colorScheme
notifications: root.notifications
mainWindow: root
}
function showLocalCacheSettings() { contentWrapper.showLocalCacheSettings() }
function showSettings() { contentWrapper.showSettings() }
function showHelp() { contentWrapper.showHelp() }
function showSignIn(username) {
if (contentLayout.currentIndex == 1) return
contentWrapper.showSignIn(username)
}
function showSetup(user, address) {
setupGuide.user = user
setupGuide.address = address
if (setupGuide.user) {
contentLayout._showSetup = true
} else {
contentLayout._showSetup = false
}
}
}