Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/desktop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorClaudio Cambra <claudio.cambra@gmail.com>2022-09-26 14:12:59 +0300
committerClaudio Cambra <claudio.cambra@gmail.com>2022-09-29 13:14:37 +0300
commit9781e896a16089d8eb98365914f48b65631cefb9 (patch)
tree49cb708c3e1b65da160394340f2b87bb87d4a597 /src
parent0d8a70eec70d4695ce2fa1f77bbaf29c5d7398ca (diff)
Improve the error box QML component
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/gui/ErrorBox.qml74
-rw-r--r--src/libsync/theme.cpp15
-rw-r--r--src/libsync/theme.h12
3 files changed, 60 insertions, 41 deletions
diff --git a/src/gui/ErrorBox.qml b/src/gui/ErrorBox.qml
index b4b9f3944..44bbc2983 100644
--- a/src/gui/ErrorBox.qml
+++ b/src/gui/ErrorBox.qml
@@ -1,34 +1,80 @@
import QtQuick 2.15
+import QtQuick.Layouts 1.15
import QtQuick.Controls 2.15
import Style 1.0
Item {
id: errorBox
+
+ signal closeButtonClicked
- property var text: ""
+ property string text: ""
- property color color: Style.errorBoxTextColor
property color backgroundColor: Style.errorBoxBackgroundColor
- property color borderColor: Style.errorBoxBorderColor
+ property bool showCloseButton: false
- implicitHeight: errorMessage.implicitHeight + 2 * 8
+ implicitHeight: errorMessageLayout.implicitHeight + (2 * Style.standardSpacing)
+
+ Rectangle {
+ id: solidStripe
+
+ anchors.top: parent.top
+ anchors.bottom: parent.bottom
+ anchors.left: parent.left
+
+ width: Style.errorBoxStripeWidth
+ color: errorBox.backgroundColor
+ }
Rectangle {
anchors.fill: parent
color: errorBox.backgroundColor
- border.color: errorBox.borderColor
+ opacity: 0.2
}
- Label {
- id: errorMessage
-
+ GridLayout {
+ id: errorMessageLayout
+
anchors.fill: parent
- anchors.margins: 8
- width: parent.width
- color: errorBox.color
- wrapMode: Text.WordWrap
- text: errorBox.text
- textFormat: Text.PlainText
+ anchors.margins: Style.standardSpacing
+ anchors.leftMargin: Style.standardSpacing + solidStripe.width
+
+ columns: 2
+
+ Label {
+ Layout.fillWidth: true
+ color: Style.ncTextColor
+ font.bold: true
+ text: qsTr("Error")
+ visible: errorBox.showCloseButton
+ }
+
+ Button {
+ Layout.preferredWidth: Style.iconButtonWidth
+ Layout.preferredHeight: Style.iconButtonWidth
+
+ background: null
+ icon.color: Style.ncTextColor
+ icon.source: "qrc:///client/theme/close.svg"
+
+ visible: errorBox.showCloseButton
+ enabled: visible
+
+ onClicked: errorBox.closeButtonClicked()
+ }
+
+ Label {
+ id: errorMessage
+
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ Layout.columnSpan: 2
+
+ color: Style.ncTextColor
+ wrapMode: Text.WordWrap
+ text: errorBox.text
+ textFormat: Text.PlainText
+ }
}
}
diff --git a/src/libsync/theme.cpp b/src/libsync/theme.cpp
index eb2268ca2..4419bc8b1 100644
--- a/src/libsync/theme.cpp
+++ b/src/libsync/theme.cpp
@@ -887,21 +887,6 @@ QColor Theme::defaultColor()
return QColor{NEXTCLOUD_BACKGROUND_COLOR};
}
-QColor Theme::errorBoxTextColor() const
-{
- return QColor{"white"};
-}
-
-QColor Theme::errorBoxBackgroundColor() const
-{
- return QColor{"red"};
-}
-
-QColor Theme::errorBoxBorderColor() const
-{
- return QColor{"black"};
-}
-
void Theme::connectToPaletteSignal()
{
if (!_paletteSignalsConnected) {
diff --git a/src/libsync/theme.h b/src/libsync/theme.h
index d2c443dfa..7261a9d7a 100644
--- a/src/libsync/theme.h
+++ b/src/libsync/theme.h
@@ -64,9 +64,6 @@ class OWNCLOUDSYNC_EXPORT Theme : public QObject
Q_PROPERTY(QString updateCheckUrl READ updateCheckUrl CONSTANT)
Q_PROPERTY(QColor defaultColor READ defaultColor CONSTANT)
- Q_PROPERTY(QColor errorBoxTextColor READ errorBoxTextColor CONSTANT)
- Q_PROPERTY(QColor errorBoxBackgroundColor READ errorBoxBackgroundColor CONSTANT)
- Q_PROPERTY(QColor errorBoxBorderColor READ errorBoxBorderColor CONSTANT)
Q_PROPERTY(QPalette systemPalette READ systemPalette NOTIFY systemPaletteChanged)
Q_PROPERTY(bool darkMode READ darkMode NOTIFY darkModeChanged)
@@ -583,15 +580,6 @@ public:
static QColor defaultColor();
- /** @return color for the ErrorBox text. */
- virtual QColor errorBoxTextColor() const;
-
- /** @return color for the ErrorBox background. */
- virtual QColor errorBoxBackgroundColor() const;
-
- /** @return color for the ErrorBox border. */
- virtual QColor errorBoxBorderColor() const;
-
static constexpr const char *themePrefix = ":/client/theme/";
QPalette systemPalette();