diff --git a/src/gui/ocsjob.h b/src/gui/ocsjob.h index a6ee88f86b..e3b8b475d2 100644 --- a/src/gui/ocsjob.h +++ b/src/gui/ocsjob.h @@ -26,6 +26,8 @@ #define OCS_SUCCESS_STATUS_CODE 100 // Apparantly the v2.php URLs can return that #define OCS_SUCCESS_STATUS_CODE_V2 200 +// Two factor auth notification returns Accepted 202 +#define OCS_ACCEPTED_STATUS_CODE 202 // not modified when using ETag #define OCS_NOT_MODIFIED_STATUS_CODE_V2 304 diff --git a/src/gui/tray/ActivityActionButton.qml b/src/gui/tray/ActivityActionButton.qml index eca55ebdcb..a6b0d70da2 100644 --- a/src/gui/tray/ActivityActionButton.qml +++ b/src/gui/tray/ActivityActionButton.qml @@ -10,7 +10,7 @@ Item { property string text: "" property string toolTipText: "" - property bool bold: false + property bool primaryButton: false property string imageSource: "" property string imageSourceHover: "" @@ -21,7 +21,7 @@ Item { signal clicked() Loader { - active: root.imageSource === "" + active: !root.primaryButton anchors.fill: parent @@ -38,7 +38,7 @@ Item { } Loader { - active: root.imageSource !== "" + active: root.primaryButton anchors.fill: parent @@ -53,7 +53,7 @@ Item { textColor: root.textColor textColorHovered: root.textColorHovered - bold: root.bold + bold: root.primaryButton imageSource: root.imageSource imageSourceHover: root.imageSourceHover diff --git a/src/gui/tray/ActivityItemActions.qml b/src/gui/tray/ActivityItemActions.qml index 6d9da41822..130a515665 100644 --- a/src/gui/tray/ActivityItemActions.qml +++ b/src/gui/tray/ActivityItemActions.qml @@ -34,7 +34,7 @@ RowLayout { id: activityActionButton readonly property string verb: model.modelData.verb - readonly property bool primary: model.index === 0 && verb !== "DELETE" + readonly property bool primary: (model.index === 0 && verb !== "DELETE") || model.modelData.primary readonly property bool isTalkReplyButton: verb === "REPLY" Layout.minimumWidth: primary ? Style.activityItemActionPrimaryButtonMinWidth : Style.activityItemActionSecondaryButtonMinWidth @@ -46,10 +46,10 @@ RowLayout { imageSource: model.modelData.imageSource ? model.modelData.imageSource + root.adjustedHeaderColor : "" imageSourceHover: model.modelData.imageSourceHovered ? model.modelData.imageSourceHovered + UserModel.currentUser.headerTextColor : "" - textColor: imageSource !== "" ? root.adjustedHeaderColor : Style.ncTextColor - textColorHovered: imageSource !== "" ? UserModel.currentUser.headerTextColor : Style.ncTextColor + textColor: primary ? root.adjustedHeaderColor : Style.ncTextColor + textColorHovered: primary ? UserModel.currentUser.headerTextColor : Style.ncTextColor - bold: primary + primaryButton: primary onClicked: !isTalkReplyButton ? root.triggerAction(model.index) : root.showReplyField() } diff --git a/src/gui/tray/usermodel.cpp b/src/gui/tray/usermodel.cpp index 23b4d58414..76a857064e 100644 --- a/src/gui/tray/usermodel.cpp +++ b/src/gui/tray/usermodel.cpp @@ -342,8 +342,10 @@ void User::slotNotificationRequestFinished(int statusCode) { int row = sender()->property("activityRow").toInt(); - // the ocs API returns stat code 100 or 200 inside the xml if it succeeded. - if (statusCode != OCS_SUCCESS_STATUS_CODE && statusCode != OCS_SUCCESS_STATUS_CODE_V2) { + // the ocs API returns stat code 100 or 200 or 202 inside the xml if it succeeded. + if (statusCode != OCS_SUCCESS_STATUS_CODE + && statusCode != OCS_SUCCESS_STATUS_CODE_V2 + && statusCode != OCS_ACCEPTED_STATUS_CODE) { qCWarning(lcActivity) << "Notification Request to Server failed, leave notification visible."; } else { // to do use the model to rebuild the list or remove the item