diff --git a/plugins/nextcloud-ui/nextcloud.cpp b/plugins/nextcloud-ui/nextcloud.cpp index 516c29adab5a28202e2c854156957676b844d22e..4e60b974ab02663e9a837bd4e952fc43acf4f2c2 100644 --- a/plugins/nextcloud-ui/nextcloud.cpp +++ b/plugins/nextcloud-ui/nextcloud.cpp @@ -18,6 +18,7 @@ NextcloudWizard::NextcloudWizard(QObject *parent) : KAccountsUiPlugin(parent) { + qmlRegisterUncreatableType("org.kde.kaccounts.nextcloud", 1, 0, "NextcloudController", QStringLiteral("Only for enums")); } NextcloudWizard::~NextcloudWizard() diff --git a/plugins/nextcloud-ui/package/contents/ui/main.qml b/plugins/nextcloud-ui/package/contents/ui/main.qml index 3d72f98a0637169327e969bb4e80a1ef763e3a95..ccc6e245ad1252f7fad8f4cef22d202a13b54771 100644 --- a/plugins/nextcloud-ui/package/contents/ui/main.qml +++ b/plugins/nextcloud-ui/package/contents/ui/main.qml @@ -6,10 +6,12 @@ */ import QtQuick 2.2 -import org.kde.kirigami 2.5 as Kirigami import QtQuick.Layouts 1.12 import QtQuick.Controls 2.5 +import org.kde.kirigami 2.5 as Kirigami +import org.kde.kaccounts.nextcloud 1.0 + Kirigami.ApplicationWindow { id: ncAccountRoot objectName: "_root" @@ -27,7 +29,16 @@ Kirigami.ApplicationWindow { Loader { anchors.fill: parent - source: helper.isLoginComplete ? Qt.resolvedUrl("Services.qml") : Qt.resolvedUrl("Server.qml") + source: { + switch (helper.state) { + case NextcloudController.ServerUrl: + return Qt.resolvedUrl("Server.qml"); + case NextcloudController.WebLogin: + return "" + case NextcloudController.Services: + return Qt.resolvedUrl("Services.qml") + } + } } } }