Commit graph

241 commits

Author SHA1 Message Date
Maxwell Kepler
008cc95e9c Add 12 hour support 2017-05-19 22:29:49 +01:00
Matthew Hodgson
486301cffb remove dodgy heuristics for hiding dates on RRs and use DateUtils instead.
reverts 5d99d68a64
fixes https://github.com/vector-im/riot-web/issues/3523
2017-05-15 02:55:07 +01:00
Matthew Hodgson
c5f2b69e48 add alt attributes to e2e icons on msgs; fixes https://github.com/vector-im/riot-web/issues/3786 2017-05-15 01:37:24 +01:00
Luke Barnard
63224ff164 Add mx_EventTile_emote class 2017-04-26 18:00:25 +01:00
Michael Telatynski
33e841a786 move user settings outward and use built in read receipts disabling
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-22 15:40:29 +01:00
turt2live
e4c4adc517 Add option to hide other people's read receipts.
Addresses vector-im/riot-web#2526

Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-04-21 14:28:28 -06:00
Luke Barnard
6010350ce5 Implement power-level changes in timeline
Fixes https://github.com/vector-im/riot-web/issues/266
2017-04-06 17:02:35 +01:00
Luke Barnard
a4b4c3feb8 Read Receipt offset
Read receipts were always one read receipt to the left further than they should have been. This fixes that and simplifies the logic.
2017-03-27 14:34:05 +01:00
Luke Barnard
d4ed9e816b Display timestamps and profiles for redacted events
This is part of fixing https://github.com/vector-im/riot-web/issues/3390
2017-03-16 17:00:10 +00:00
Luke Barnard
c98a2144e9 Merge branch 'develop' into luke/add-onclick-permalinks 2017-03-09 09:59:09 +00:00
Luke Barnard
173daddb04 Comment typo 2017-03-09 09:56:52 +00:00
David Baker
676c5c21c1 Merge pull request #739 from matrix-org/luke/visible-redactions
Show message redactions as black event tiles
2017-03-09 09:41:31 +00:00
Luke Barnard
2513bfa612 Add onClick to permalinks to route within Riot 2017-03-08 16:55:44 +00:00
Luke Barnard
c0fc3ba3fe Make redactions appear when the event has been redacted (on Room.redaction) 2017-03-06 14:20:24 +00:00
Luke Barnard
5ef61b7c35 Only show a redaction tile for messages 2017-03-03 16:45:29 +00:00
Luke Barnard
6c32e3720b Remove seemingly unused "bounce" 2017-03-03 15:51:14 +00:00
Luke Barnard
2bd9885288 Start to show redacted events 2017-03-03 15:42:24 +00:00
Luke Barnard
923ea9c6aa Change timestamp permalinks to matrix.to 2017-03-03 10:42:44 +00:00
Luke Barnard
5be2c62011 Fix a couple of issues with RRs
- Shift to the left _before_ adding an avatar so that there are always `MAX_READ_AVATARS` visible, instead of there being `MAX_READ_AVATARS + 1` avatars displayed following the first "collapse".
- Use `right` instead of `left` so that double-digit remainders don't get overlapped.
2017-02-27 11:16:13 +00:00
David Baker
18d4d3392a Fix a bunch of linting errors
eslint --fix and a few manual ones
2017-01-20 14:22:27 +00:00
Richard van der Hoff
ba2460aef4 Merge pull request #618 from matrix-org/rav/async_dialog
Allow Modal to be used with async-loaded components
2017-01-19 16:08:30 +00:00
Matthew Hodgson
a18d94099e switch to using <span/> for edit button 2017-01-17 14:11:15 +00:00
Richard van der Hoff
ac22803ba0 Allow Modal to be used with async-loaded components
Add Modal.createDialogAsync, which can be used to display asynchronously-loaded
React components. Also make EncryptedEventDialog use it as a handy
demonstration.
2017-01-16 17:18:38 +00:00
Kegan Dougal
5d99d68a64 Show the full date and time if the receipt was sent days after the event 2016-12-09 11:43:23 +00:00
Kegan Dougal
49010c3e93 Refactor how 'readReceipts' are passed into EventTiles
Instead of passing a list of RoomMembers, pass a list of records with a
`roomMember` prop and a `ts` prop so we can display the timestamp on hover.
2016-12-09 11:24:10 +00:00
Kegan Dougal
bd7553d1ea Add read receipt times to the hovertip of read markers
Fixes #2709. Surprisingly, this data was never passed down to
ReadReceiptMarker.
2016-12-08 16:23:20 +00:00
Johannes Löthberg
f321c6c346 Strip (IRC) when clicking on username
Fixes vector-im/riot-web#2072.

Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
2016-12-03 01:20:50 +01:00
Richard van der Hoff
b209cc551e Update eventtiles when the events are decrypted
Events are sometimes decrypted after they arrive, so add an eventlistener for
it and update the tile.
2016-11-15 11:12:52 +00:00
Richard van der Hoff
0e8a49ebb7 Update EventTile to use WithMatrixClient instead of MatrixClientPeg 2016-11-14 16:00:24 +00:00
Luke Barnard
d8bc4d9a6f Factor out avatar click leads to view_user 2016-11-10 15:18:59 +00:00
Matthew Hodgson
2c7c382d56 stop continuations leaking on filepanel 2016-09-16 02:40:09 +01:00
Matthew Hodgson
3fcea1bfc7 only apply verified css to genuinely verified tiles 2016-09-15 22:56:12 +01:00
Matthew Hodgson
b98c2ae25e update crypto state of the room in realtime when turned on 2016-09-15 19:25:53 +01:00
Matthew Hodgson
1899d61893 textual event for m.room.encryption 2016-09-15 17:01:02 +01:00
Matthew Hodgson
ce655c7f50 improve device info 2016-09-15 02:44:55 +01:00
Matthew Hodgson
0473b14564 fix e2e icon transitions 2016-09-14 01:25:43 +01:00
Matthew Hodgson
9b7ab46a72 dedicated dialog box for E2E messages 2016-09-12 23:42:24 +01:00
Matthew Hodgson
5a548c3d12 add an onclick to the e2e icons 2016-09-12 18:50:52 +01:00
Matthew Hodgson
13eed6cd39 fix NPE in EventTile 2016-09-12 17:29:26 +01:00
Matthew Hodgson
9eae1c5bb7 final e2e icons 2016-09-12 16:51:19 +01:00
Matthew Hodgson
3a1159ce12 e2e look & feel 2016-09-12 01:37:51 +01:00
Matthew Hodgson
e6b4b8c1cb bring back small avatars for info msgs otherwise the design breaks 2016-09-11 23:01:20 +01:00
Matthew Hodgson
46205ad83c back out small avatars for emotes for now as they conflict with the E2E artwork.
they will be reintroduced once we have lozenges
2016-09-11 22:49:05 +01:00
Matthew Hodgson
34bb37aaba layout for file & notif panel 2016-09-11 02:14:27 +01:00
Richard van der Hoff
96567dad0d Fix NPE when we don't know the sender of an event
Fixes a bug introduced in
https://github.com/matrix-org/matrix-react-sdk/pull/426.

Particularly when we are showing search results, we may not recognise the
sender of an event; attempting to create a MemberAvatar for it will lead to
null-reference errors.

Also a bit of untangling of the logic of needsSenderProfile. Since
https://github.com/matrix-org/matrix-react-sdk/pull/422,
EventTileType.needsSenderProfile was only being called on MessageEvents, and
therefore only returned true. It's a shame to see all this logic going into
EventTile rather than the individual EventTileTypes, but since it's there,
let's not leave the unused logic lying around in the EventTileType
implementations.
2016-08-25 16:55:09 +01:00
wmwragg
ae8234ffe3 Added event/info message avatars back in 2016-08-23 15:58:27 +01:00
wmwragg
993333490d Removal of the mini avatars for action (info) messages 2016-08-19 16:38:05 +01:00
wmwragg
afd1ab1582 Comment to describe what info messages are 2016-08-18 22:19:23 +01:00
wmwragg
a55c4a2a52 Initial pass at the /me and action messages, without name highlighting, and missing avatar for continuation messages after a /me or action message 2016-08-18 21:53:37 +01:00
wmwragg
52f5061cc5 Made the menu button a clickable image rather than an input element 2016-08-16 17:34:33 +01:00
wmwragg
58d9789645 Increase main avatar size 2016-08-16 16:03:34 +01:00
wmwragg
c359358101 Initial context menu positioning and style change 2016-08-16 11:59:26 +01:00
wmwragg
6fd61f5816 Initial reposition of the timestamp 2016-08-16 10:26:27 +01:00
wmwragg
6e7e091117 Refactor so that chevron and menu can be positioned independantly 2016-07-27 16:09:07 +01:00
wmwragg
0660b9feff Fixes to properly point to the moved components 2016-07-27 14:49:10 +01:00
wmwragg
4b26ac58af Re-modularised the context menus 2016-07-27 10:41:24 +01:00
wmwragg
dca4702b7b Fixed a bug where the contextual menu was being incorrectly positioned when zoom in on the webpage 2016-07-27 09:51:50 +01:00
Matthew Hodgson
1365f18829 many stupid thinkos and bugfixes; make it work 2016-07-20 12:03:13 +01:00
Matthew Hodgson
ebdac4ee50 first cut (untested) 2016-07-18 01:35:42 +01:00
Richard van der Hoff
a1dd427420 Implement device blocking
This is the react-sdk part of
https://github.com/matrix-org/matrix-js-sdk/pull/146. It adds 'Block'/'Unblock'
buttons to the device list, and updates the deviceVerified listeners to listen
for deviceVerificationChanged instead.

Also adds an extra <div> to the deviceinfo section to help me with the
CSS.
2016-06-23 17:30:04 +01:00
Richard van der Hoff
85770feb31 device verification: use a js-sdk event
We'll probably want to be able to bubble up device verifications from the
js-sdk at some point, so let's use a js-sdk event for this.
2016-06-08 21:25:42 +01:00
Richard van der Hoff
7ce49c752f Wire up events to update UI on device verification
Use the dispatcher to update event tiles and memberdeviceinfo when a device is
marked as verified.
2016-06-08 18:35:43 +01:00
Richard van der Hoff
1616431d27 EventTile: add classes to indicate verifiedness
Add a couple of CSS classes to event tiles to reflect whether encrypted events
have been verified or not.
2016-06-08 17:02:42 +01:00
Richard van der Hoff
ca0c697b6e Avoid rerendering during Room unmount
might speed up room changing by a few milliseconds
2016-04-22 17:06:53 +01:00
Richard van der Hoff
fa34dee091 Rewrite Read-receipt animation
... hopefully fixing https://github.com/vector-im/vector-web/issues/1437 in the
process.

The idea here is that, when we remove a read-receipt from the DOM, we stash its
position in a map. Then, when the read-receipt appears again attached to
another event, we know where to start the transition.
2016-04-20 23:06:53 +01:00
Richard van der Hoff
dcd81da856 Fix test failures introduced by last PR 2016-04-19 21:10:23 +01:00
Richard van der Hoff
568e7aef8b Avoid rerendering EventTiles when not necessary
Each individual eventtile isn't particularly expensive, but when you have 500
of them, they start adding up. Shuffle some of the stuff into MessagePanel, so
that we can shouldComponentUpdate EventTiles properly.
2016-04-19 19:41:43 +01:00
Matthew Hodgson
21fd5078f9 fix NPE on getEventTileOps 2016-04-14 17:39:45 +01:00
Matthew Hodgson
089963b4c7 timestamps are permalinks 2016-04-12 13:33:59 +01:00
Matthew Hodgson
6c372d37f7 add the concept of eventTileOps for managing widget visibility based on vdh's PR feedback 2016-04-08 21:42:29 +01:00
Matthew Hodgson
4388334e30 fix up scroll behaviour when loading widgets 2016-04-02 00:36:19 +01:00
Matthew Hodgson
12db0d9130 fix NPE on events with no sender object 2016-03-18 16:33:22 +00:00
Matthew Hodgson
c7ffb59374 click on nicks to insert them into the MessageComposer 2016-03-17 15:35:23 +00:00
Matthew Hodgson
b617571481 tidy up https://github.com/matrix-org/matrix-react-sdk/pull/225 2016-03-17 11:56:46 +00:00
Aviral Dasgupta
bd7f56007a Bring up MemberInfo on avatar click in EventTile
Fixes vector-im/vector-web#1174
2016-03-17 02:45:38 +05:30
Matthew Hodgson
0e1186c4f9 display m.room.history_visibility updates in the timeline 2016-03-15 23:47:40 +00:00
Matthew Hodgson
b66ca74ede fix comments 2016-03-05 02:35:17 +00:00
Richard van der Hoff
99d2392b6f Update the scroll offset when images load
In order to deal with image-loading reshaping the DOM, wire up
ScrollPanel.checkScroll to the image load events.

Fixes https://github.com/vector-im/vector-web/issues/984
2016-02-22 17:43:33 +00:00
Matthew Hodgson
957ef9cdc8 fix self-highlight 2016-02-19 01:56:03 +00:00
Richard van der Hoff
e9726865fc Merge pull request #162 from matrix-org/rav/keep_redactions
Handle redacted events
2016-02-17 21:42:39 +00:00
Richard van der Hoff
e3feae32e1 Fix search clickthrough for HTML events
Switch to using a normal <a href="..."> link for search result
clickthrough. Apart from generally giving a better experience, this means that
it also works on html messages. The problem there was that we were attaching
onClick handlers to <span>s which we were then flattening into HTML with
ReactDOMServer (which meant the onClick handlers were never attached to React's
list of listeners).

To make this work without jumping through React hoops, the highlighter now
returns either a list of strings or a list of nodes, depending on whether we
are dealing with an HTML event or a text one. We therefore have a separate
HtmlHighlighter and TextHighlighter.
2016-02-17 21:06:27 +00:00
Richard van der Hoff
eb91faf554 Handle redacted events
matrix-js-sdk now retains redacted events. Filter them out of the timeline.

Also put empty placeholders in the dom so that if we try to scroll to a
redacted event, we don't end up blowing up.
2016-02-16 16:08:52 +00:00
Richard van der Hoff
c82b364ca8 Address review comments
Mostly renaming things and adding comments.
2016-02-03 08:03:10 +00:00
Richard van der Hoff
d9e13780b8 Implement direct-to-event linking.
This adds support for links to particular event ids: add /<eventId> to the URL
for a room.

This commit also ensures that we scroll to the 'read marker' when switching to
a room which has no previous scroll state, as well as preventing that marker
from going past the middle of the screen.

This also reinstates the preservation of scroll state when switching rooms,
which was disabled previously.
2016-02-01 16:31:12 +00:00
Matthew Hodgson
0772f50fab update copyright for 2016 2016-01-07 04:06:52 +00:00
Kegsay
a6e735dbde Merge pull request #76 from matrix-org/kegan/bugfix-read-receipt
Null guard getMember

Fixes https://github.com/vector-im/vector-web/issues/566
2016-01-05 11:26:04 +00:00
Kegan Dougal
75ad96c8ba Null guard getMember 2016-01-04 10:11:42 +00:00
Richard van der Hoff
b0adb1945f Expose onHighlightClick on the event tiles 2015-12-24 13:51:14 +00:00
Kegan Dougal
17a8eb0109 Display m.room.third_party_invite events. Display sensible text transitions. 2015-12-17 15:48:14 +00:00
Kegan Dougal
784c1b63dc Move remaining vector molecules to components 2015-12-01 11:19:25 +00:00
Matthew Hodgson
a8fd1b5d7a rename message components as per RL discussion this morning 2015-11-30 15:19:43 +00:00
Renamed from src/components/views/messages/Event.js (Browse further)