diff options
Diffstat (limited to 'components/accounts/contents/ui/AccountWizard.qml')
-rw-r--r-- | components/accounts/contents/ui/AccountWizard.qml | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/components/accounts/contents/ui/AccountWizard.qml b/components/accounts/contents/ui/AccountWizard.qml index 996eeb6c..b4720174 100644 --- a/components/accounts/contents/ui/AccountWizard.qml +++ b/components/accounts/contents/ui/AccountWizard.qml | |||
@@ -25,24 +25,24 @@ Kube.Popup { | |||
25 | id: root | 25 | id: root |
26 | 26 | ||
27 | 27 | ||
28 | property bool singleAccountMode: false | 28 | property bool requireSetup: false |
29 | property string forceAccountType: "" | 29 | property var availableAccountPlugins: [] |
30 | 30 | ||
31 | modal: true | 31 | modal: true |
32 | focus: true | 32 | focus: true |
33 | closePolicy: singleAccountMode ? Controls2.Popup.NoAutoClose : Controls2.Popup.CloseOnEscape | Controls2.Popup.CloseOnPressOutside | 33 | closePolicy: requireSetup ? Controls2.Popup.NoAutoClose : Controls2.Popup.CloseOnEscape | Controls2.Popup.CloseOnPressOutside |
34 | 34 | ||
35 | clip: true | 35 | clip: true |
36 | 36 | ||
37 | Controls2.StackView { | 37 | Controls2.StackView { |
38 | id: stack | 38 | id: stack |
39 | |||
40 | anchors.fill: parent | 39 | anchors.fill: parent |
41 | |||
42 | initialItem: root.singleAccountMode ? null : mainView | ||
43 | Component.onCompleted: { | 40 | Component.onCompleted: { |
44 | if (root.singleAccountMode) { | 41 | //If we only have one account type we skip the selection |
45 | stack.push(wizardPage.createObject(app, {accountType: root.forceAccountType})) | 42 | if (root.availableAccountPlugins.length == 1) { |
43 | stack.push(wizardPage.createObject(app, {accountType: root.availableAccountPlugins[0]})) | ||
44 | } else { | ||
45 | stack.push(mainView.createObject(app)) | ||
46 | } | 46 | } |
47 | } | 47 | } |
48 | } | 48 | } |
@@ -64,8 +64,7 @@ Kube.Popup { | |||
64 | spacing: Kube.Units.largeSpacing | 64 | spacing: Kube.Units.largeSpacing |
65 | 65 | ||
66 | Repeater { | 66 | Repeater { |
67 | //TODO replace by model of available accounts | 67 | model: root.availableAccountPlugins |
68 | model: ["kolabnow", "imap", "maildir", "gmail"] | ||
69 | delegate: Kube.Button { | 68 | delegate: Kube.Button { |
70 | Layout.fillWidth: true | 69 | Layout.fillWidth: true |
71 | text: modelData | 70 | text: modelData |
@@ -81,7 +80,7 @@ Kube.Popup { | |||
81 | Component { | 80 | Component { |
82 | id: wizardPage | 81 | id: wizardPage |
83 | AccountWizardPage { | 82 | AccountWizardPage { |
84 | singleAccountMode: root.singleAccountMode | 83 | requireSetup: root.requireSetup |
85 | onDone: { | 84 | onDone: { |
86 | root.close() | 85 | root.close() |
87 | Kube.Fabric.postMessage(Kube.Messages.componentDone, {}) | 86 | Kube.Fabric.postMessage(Kube.Messages.componentDone, {}) |