From b431aa47c9ad0f170ce4f701d85ba77e23eacafa Mon Sep 17 00:00:00 2001 From: manuroe Date: Wed, 8 Aug 2018 16:14:56 +0200 Subject: [PATCH] Chat screen: Add "view decrypted source" option on the selected event #1642 --- CHANGES.rst | 3 ++- Riot/Assets/en.lproj/Vector.strings | 1 + Riot/Modules/Room/RoomViewController.m | 20 ++++++++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/CHANGES.rst b/CHANGES.rst index 25530dcdf..922eb3283 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,4 +1,4 @@ -Changes in 0.6.21 () +Changes in 0.7.0 () =============================================== Improvements: @@ -7,6 +7,7 @@ Improvements: * Replies: Implement sending (#1911). * Support room versioning (#1938). * Add support of lazy-loading of room members (#1931). +* Chat screen: Add "view decrypted source" option on the selected event (#1642). Changes in 0.6.20 (2018-07-13) =============================================== diff --git a/Riot/Assets/en.lproj/Vector.strings b/Riot/Assets/en.lproj/Vector.strings index 19afb68fe..08b8d3258 100644 --- a/Riot/Assets/en.lproj/Vector.strings +++ b/Riot/Assets/en.lproj/Vector.strings @@ -257,6 +257,7 @@ "room_event_action_share" = "Share"; "room_event_action_permalink" = "Permalink"; "room_event_action_view_source" = "View Source"; +"room_event_action_view_decrypted_source" = "View Decrypted Source"; "room_event_action_report" = "Report content"; "room_event_action_report_prompt_reason" = "Reason for reporting this content"; "room_event_action_kick_prompt_reason" = "Reason for kicking this user"; diff --git a/Riot/Modules/Room/RoomViewController.m b/Riot/Modules/Room/RoomViewController.m index 5f8300e99..d4d31dde3 100644 --- a/Riot/Modules/Room/RoomViewController.m +++ b/Riot/Modules/Room/RoomViewController.m @@ -2508,6 +2508,26 @@ }]]; } + + // Add "View Decrypted Source" for e2ee event we can decrypt + if (level == 1 && selectedEvent.isEncrypted && selectedEvent.clearEvent) + { + [currentAlert addAction:[UIAlertAction actionWithTitle:NSLocalizedStringFromTable(@"room_event_action_view_decrypted_source", @"Vector", nil) + style:UIAlertActionStyleDefault + handler:^(UIAlertAction * action) { + + if (weakSelf) + { + typeof(self) self = weakSelf; + + [self cancelEventSelection]; + + // Display clear event details + [self showEventDetails:selectedEvent.clearEvent]; + } + + }]]; + } if (level == 1) {