diff --git a/src/controllers/organisms/RoomView.js b/src/controllers/organisms/RoomView.js
index 746dd98a..ff62a41b 100644
--- a/src/controllers/organisms/RoomView.js
+++ b/src/controllers/organisms/RoomView.js
@@ -48,6 +48,7 @@ module.exports = {
this.dispatcherRef = dis.register(this.onAction);
MatrixClientPeg.get().on("Room.timeline", this.onRoomTimeline);
MatrixClientPeg.get().on("Room.name", this.onRoomName);
+ MatrixClientPeg.get().on("Room.receipt", this.onRoomReceipt);
MatrixClientPeg.get().on("RoomMember.typing", this.onRoomMemberTyping);
MatrixClientPeg.get().on("RoomState.members", this.onRoomStateMember);
this.atBottom = true;
@@ -65,6 +66,7 @@ module.exports = {
if (MatrixClientPeg.get()) {
MatrixClientPeg.get().removeListener("Room.timeline", this.onRoomTimeline);
MatrixClientPeg.get().removeListener("Room.name", this.onRoomName);
+ MatrixClientPeg.get().removeListener("Room.receipt", this.onRoomReceipt);
MatrixClientPeg.get().removeListener("RoomMember.typing", this.onRoomMemberTyping);
MatrixClientPeg.get().removeListener("RoomState.members", this.onRoomStateMember);
}
@@ -164,6 +166,12 @@ module.exports = {
}
},
+ onRoomReceipt: function(receiptEvent, room) {
+ if (room.roomId == this.props.roomId) {
+ this.forceUpdate();
+ }
+ },
+
onRoomMemberTyping: function(ev, member) {
this.forceUpdate();
},
diff --git a/src/skins/vector/css/molecules/EventTile.css b/src/skins/vector/css/molecules/EventTile.css
index eb59711e..25fe9646 100644
--- a/src/skins/vector/css/molecules/EventTile.css
+++ b/src/skins/vector/css/molecules/EventTile.css
@@ -123,3 +123,12 @@ limitations under the License.
.mx_EventTile.menu .mx_MessageTimestamp {
visibility: visible;
}
+
+.mx_EventTile_readAvatars {
+ float: right;
+}
+
+.mx_EventTile_readAvatars .mx_MemberAvatar {
+ margin-left: 1px;
+ margin-right: 1px;
+}
diff --git a/src/skins/vector/views/molecules/EventTile.js b/src/skins/vector/views/molecules/EventTile.js
index caaada62..0cbeb864 100644
--- a/src/skins/vector/views/molecules/EventTile.js
+++ b/src/skins/vector/views/molecules/EventTile.js
@@ -85,11 +85,11 @@ module.exports = React.createClass({
for (var i = 0; i < userIds.length; ++i) {
var member = room.getMember(userIds[i]);
avatars.push(
-
+
);
}
- return { avatars };
+ return { avatars };
},
render: function() {