Retrying & deleting failed messages

- Display an exclamation mark (on a red background). In case of a multi-line message
- When a message with an error is selected, show a bottom bar with the 4 following actions: Retry - Delete - Edit - Copy
- If users press on Delete, a confirmation dialog is displayed
- When error messages occur, a general error message appears above the composer. Selecting Delete will delete all error messages. Pressing on Retry will attempt to resend error messages
- If users press on Delete, a confirmation dialog is displayed
- In room lists, decorate rooms with errored messages with the error icon. Rooms with errors should be sorted first
This commit is contained in:
Gil Eluard
2021-03-02 21:56:50 +01:00
parent fe184cb4ae
commit d58f499871
47 changed files with 625 additions and 201 deletions
@@ -20,6 +20,7 @@
#import "AvatarGenerator.h"
#import "MXEvent.h"
#import "MXRoom+Riot.h"
#import "ThemeService.h"
#import "Riot-Swift.h"
@@ -102,6 +103,9 @@ static const CGFloat kDirectRoomBorderWidth = 3.0;
self.lastEventDescription.text = roomCellData.lastEventTextMessage;
}
self.unsentImageView.hidden = roomCellData.roomSummary.room.sentStatus == MXRoomSentStatusOk;
self.lastEventDecriptionLabelTrailingConstraint.constant = self.unsentImageView.hidden ? 10 : 30;
// Notify unreads and bing
if (roomCellData.hasUnread)
{