diff --git a/internal/frontend/bridge-gui/bridge-gui/qml/BugReportView.qml b/internal/frontend/bridge-gui/bridge-gui/qml/BugReportView.qml index 09159e76..016d8847 100644 --- a/internal/frontend/bridge-gui/bridge-gui/qml/BugReportView.qml +++ b/internal/frontend/bridge-gui/bridge-gui/qml/BugReportView.qml @@ -150,7 +150,7 @@ SettingsView { id: sendButton text: qsTr("Send") colorScheme: root.colorScheme - + enabled: !loading onClicked: { description.validate() address.validate() diff --git a/internal/frontend/bridge-gui/bridge-gui/qml/ConnectionModeSettings.qml b/internal/frontend/bridge-gui/bridge-gui/qml/ConnectionModeSettings.qml index 45f929ba..e21e46a5 100644 --- a/internal/frontend/bridge-gui/bridge-gui/qml/ConnectionModeSettings.qml +++ b/internal/frontend/bridge-gui/bridge-gui/qml/ConnectionModeSettings.qml @@ -117,7 +117,7 @@ SettingsView { root.submit() } - enabled: (imapSSLButton.checked !== Backend.useSSLForIMAP) || (smtpSSLButton.checked !== Backend.useSSLForSMTP) + enabled: (!loading) && ((imapSSLButton.checked !== Backend.useSSLForIMAP) || (smtpSSLButton.checked !== Backend.useSSLForSMTP)) } Button { diff --git a/internal/frontend/bridge-gui/bridge-gui/qml/LocalCacheSettings.qml b/internal/frontend/bridge-gui/bridge-gui/qml/LocalCacheSettings.qml index 2bf8332e..4de86b79 100644 --- a/internal/frontend/bridge-gui/bridge-gui/qml/LocalCacheSettings.qml +++ b/internal/frontend/bridge-gui/bridge-gui/qml/LocalCacheSettings.qml @@ -33,7 +33,7 @@ SettingsView { function refresh() { diskCacheSetting.description = Backend.nativePath(root.diskCachePath) - submitButton.enabled = !Backend.areSameFileOrFolder(Backend.diskCachePath, root.diskCachePath) + submitButton.enabled = (!submitButton.loading) && !Backend.areSameFileOrFolder(Backend.diskCachePath, root.diskCachePath) } Label { diff --git a/internal/frontend/bridge-gui/bridge-gui/qml/PortSettings.qml b/internal/frontend/bridge-gui/bridge-gui/qml/PortSettings.qml index a8d7c317..9cc34289 100644 --- a/internal/frontend/bridge-gui/bridge-gui/qml/PortSettings.qml +++ b/internal/frontend/bridge-gui/bridge-gui/qml/PortSettings.qml @@ -84,7 +84,7 @@ SettingsView { id: submitButton colorScheme: root.colorScheme text: qsTr("Save") - enabled: root._valuesChanged + enabled: (!loading) && root._valuesChanged onClicked: { // removing error here because we may have set it manually (port occupied) imapField.error = false diff --git a/internal/frontend/bridge-gui/bridge-gui/qml/Proton/Button.qml b/internal/frontend/bridge-gui/bridge-gui/qml/Proton/Button.qml index 6f7a23d8..bd3529c1 100644 --- a/internal/frontend/bridge-gui/bridge-gui/qml/Proton/Button.qml +++ b/internal/frontend/bridge-gui/bridge-gui/qml/Proton/Button.qml @@ -38,16 +38,6 @@ T.Button { property alias textVerticalAlignment: label.verticalAlignment property alias textHorizontalAlignment: label.horizontalAlignment - // TODO: store previous enabled state and restore it? - // For now assuming that only enabled buttons could have loading state - onLoadingChanged: { - if (loading) { - enabled = false - } else { - enabled = true - } - } - id: control implicitWidth: Math.max(