Warning, /network/neochat/src/qml/Homeserver.qml is written in an unsupported language. File is not indexed.

0001 // SPDX-FileCopyrightText: 2023 Tobias Fella <tobias.fella@kde.org>
0002 // SPDX-License-Identifier: GPL-2.0-or-later
0003 
0004 import QtQuick
0005 import QtQuick.Layouts
0006 
0007 import org.kde.kirigami as Kirigami
0008 import org.kde.kirigamiaddons.formcard as FormCard
0009 
0010 import org.kde.neochat
0011 
0012 LoginStep {
0013     id: root
0014 
0015     onActiveFocusChanged: if (activeFocus) urlField.forceActiveFocus()
0016 
0017     FormCard.FormTextFieldDelegate {
0018         id: urlField
0019         label: i18n("Server Url:")
0020         validator: RegularExpressionValidator {
0021             regularExpression: /([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9]+(:[0-9]+)?/
0022         }
0023         onTextChanged: timer.restart()
0024         statusMessage: Registration.status === Registration.ServerNoRegistration ? i18n("Registration is disabled on this server.") : ""
0025         Keys.onReturnPressed: {
0026             if (root.nextAction.enabled) {
0027                 root.nextAction.trigger()
0028             }
0029         }
0030     }
0031 
0032     Timer {
0033         id: timer
0034         interval: 500
0035         onTriggered: Registration.homeserver = urlField.text
0036     }
0037 
0038     nextAction: Kirigami.Action {
0039         text: Registration.testing ? i18n("Loading") : null
0040         enabled: Registration.status > Registration.ServerNoRegistration
0041         onTriggered: root.processed("qrc:/org/kde/neochat/qml/Username.qml");
0042     }
0043     previousAction: Kirigami.Action {
0044         onTriggered: root.processed("qrc:/org/kde/neochat/qml/LoginRegister.qml")
0045     }
0046 }