summary refs log tree commit diff
diff options
context:
space:
mode:
authorKegan Dougal <kegan@matrix.org>2014-10-29 16:35:33 +0000
committerKegan Dougal <kegan@matrix.org>2014-10-29 16:35:33 +0000
commit0d278f5da860a0067e0dc7177caa6d5b69396026 (patch)
tree15ee8f0ecc23e36404ad9725457b263eb4947dff
parentFix an off-by-one bug in presence event stream pagination; this might be resp... (diff)
downloadsynapse-0d278f5da860a0067e0dc7177caa6d5b69396026.tar.xz
SYWEB-127: Open event info modal dialog when the bubble is clicked.
This allows images to be clicked by clicking on the edge with the bubble.
This is important since Redactions are only visible on the event info
screen.
-rw-r--r--webclient/room/room.html23
1 files changed, 11 insertions, 12 deletions
diff --git a/webclient/room/room.html b/webclient/room/room.html
index 85ae0eeca4..38b6d591ea 100644
--- a/webclient/room/room.html
+++ b/webclient/room/room.html
@@ -96,11 +96,11 @@
                          ng-hide="events.rooms[room_id].messages[$index - 1].user_id === msg.user_id || msg.user_id === state.user_id"/>
                 </td>
                 <td ng-class="(!msg.content.membership && ('m.room.topic' !== msg.type && 'm.room.name' !== msg.type))? (msg.content.msgtype === 'm.emote' ? 'emote text' : 'text') : 'membership text'">
-                    <div class="bubble">
-                        <span ng-if="'join' === msg.content.membership && msg.changedKey === 'membership'" ng-click="openJson(msg)">
+                    <div class="bubble" ng-click="openJson(msg)">
+                        <span ng-if="'join' === msg.content.membership && msg.changedKey === 'membership'">
                             {{ members[msg.state_key].displayname || msg.state_key }} joined
                         </span>
-                        <span ng-if="'leave' === msg.content.membership && msg.changedKey === 'membership'" ng-click="openJson(msg)">
+                        <span ng-if="'leave' === msg.content.membership && msg.changedKey === 'membership'">
                             <span ng-if="msg.user_id === msg.state_key">
                                 {{ members[msg.state_key].displayname || msg.state_key }} left
                             </span>
@@ -114,7 +114,7 @@
                             </span>
                         </span>
                         <span ng-if="'invite' === msg.content.membership && msg.changedKey === 'membership' || 
-                                     'ban' === msg.content.membership && msg.changedKey === 'membership'" ng-click="openJson(msg)">
+                                     'ban' === msg.content.membership && msg.changedKey === 'membership'">
                             {{ members[msg.user_id].displayname || msg.user_id }}
                             {{ {"invite": "invited", "ban": "banned"}[msg.content.membership] }}
                             {{ members[msg.state_key].displayname || msg.state_key }}
@@ -122,25 +122,24 @@
                                 : {{ msg.content.reason }}
                             </span>
                         </span>                        
-                        <span ng-if="msg.changedKey === 'displayname'" ng-click="openJson(msg)">
+                        <span ng-if="msg.changedKey === 'displayname'">
                             {{ msg.user_id }} changed their display name from {{ msg.prev_content.displayname }} to {{ msg.content.displayname }}
                         </span>
                         
                         <span ng-show='msg.content.msgtype === "m.emote"'
                               ng-class="msg.echo_msg_state"
                               ng-bind-html="'* ' + (members[msg.user_id].displayname || msg.user_id) + ' ' + msg.content.body | linky:'_blank'"
-                              ng-click="openJson(msg)"/>
+                              />
                         
                         <span ng-show='msg.content.msgtype === "m.text"' 
                               class="message"
-                              ng-click="openJson(msg)"
                               ng-class="containsBingWord(msg.content.body) && msg.user_id != state.user_id ? msg.echo_msg_state + ' messageBing' : msg.echo_msg_state"
                               ng-bind-html="(msg.content.msgtype === 'm.text' && msg.type === 'm.room.message' && msg.content.format === 'org.matrix.custom.html') ? 
                                                                                         (msg.content.formatted_body | unsanitizedLinky) :
                                              (msg.content.msgtype === 'm.text' && msg.type === 'm.room.message') ? (msg.content.body | linky:'_blank') : '' "/>
 
-                        <span ng-show='msg.type === "m.call.invite" && msg.user_id == state.user_id' ng-click="openJson(msg)">Outgoing Call{{ isWebRTCSupported ? '' : ' (But your browser does not support VoIP)' }}</span>
-                        <span ng-show='msg.type === "m.call.invite" && msg.user_id != state.user_id' ng-click="openJson(msg)">Incoming Call{{ isWebRTCSupported ? '' : ' (But your browser does not support VoIP)' }}</span>
+                        <span ng-show='msg.type === "m.call.invite" && msg.user_id == state.user_id'>Outgoing Call{{ isWebRTCSupported ? '' : ' (But your browser does not support VoIP)' }}</span>
+                        <span ng-show='msg.type === "m.call.invite" && msg.user_id != state.user_id'>Incoming Call{{ isWebRTCSupported ? '' : ' (But your browser does not support VoIP)' }}</span>
 
                         <div ng-show='msg.content.msgtype === "m.image"'>
                             <div ng-hide='msg.content.thumbnail_url' ng-style="msg.content.body.h && { 'height' : (msg.content.body.h < 320) ? msg.content.body.h : 320}">
@@ -148,15 +147,15 @@
                             </div>
                             <div ng-show='msg.content.thumbnail_url' ng-style="{ 'height' : msg.content.thumbnail_info.h }">
                                 <img class="image mouse-pointer" ng-src="{{ msg.content.thumbnail_url }}"
-                                     ng-click="$parent.fullScreenImageURL = msg.content.url"/>
+                                     ng-click="$parent.fullScreenImageURL = msg.content.url; $event.stopPropagation();"/>
                             </div>
                         </div>
 
-                        <span ng-if="'m.room.topic' === msg.type" ng-click="openJson(msg)">
+                        <span ng-if="'m.room.topic' === msg.type">
                             {{ members[msg.user_id].displayname || msg.user_id }} changed the topic to: {{ msg.content.topic }}
                         </span>
 
-                        <span ng-if="'m.room.name' === msg.type" ng-click="openJson(msg)">
+                        <span ng-if="'m.room.name' === msg.type">
                             {{ members[msg.user_id].displayname || msg.user_id }} changed the room name to: {{ msg.content.name }}
                         </span>