Commit graph

193 commits

Author SHA1 Message Date
Michael Telatynski
1d90835de0
Merge branches 'develop' and 't3chguy/m.relates_to' of github.com:matrix-org/matrix-react-sdk into t3chguy/m.relates_to
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/components/structures/RoomView.js
2018-04-04 11:08:34 +01:00
Richard Lewis
f8f8bc469e Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/snapshot 2018-04-03 11:34:14 +01:00
Michael Telatynski
b5ed08eba2
Merge
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-03-24 17:52:49 +00:00
Richard Lewis
b2d23b6999 Switch to 'm.sticker' message events. Allow whitelisting of wisget capabilities. 2018-03-12 13:56:02 +00:00
Luke Barnard
3a3cced905 E2E "fudge-button"
Implement a UI to expose a JS-SDK API for cancelling and resending
a room key request for an event.

This is useful in scenarios where the user has dismissed the request
on their other devices and would like to send the restart the
verification dance manually.

Depends on JS-SDK PR https://github.com/matrix-org/matrix-js-sdk/pull/624
2018-03-08 14:13:33 +00:00
Richard Lewis
b2bf4d4709 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/snapshot 2018-02-23 15:37:33 +00:00
Michael Telatynski
90f9badbf3
s/Reply/ReplyThread/
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-20 15:40:19 +00:00
Michael Telatynski
cb293a852d
reply and reply_preview only differ in whether they contain <Reply />
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-16 21:07:25 +00:00
Michael Telatynski
8062494692
show replies in ReplyPreview
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-16 20:58:39 +00:00
Michael Telatynski
fbb950e064
mass s/Quote/Reply
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 12:38:25 +00:00
Michael Telatynski
1c3d8cbe6e
initial refactor of Replies to use B explicit over-the-wire format
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-10 11:19:43 +00:00
Michael Telatynski
56927b23e6
pass onWidgetLoad (which is required for SOME EventTileTypes)
XXX: they should follow an interface, this is somewhat nasty

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-28 22:14:22 +00:00
Michael Telatynski
33995b053e
Add class to EventTile Line's that are quotes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-22 16:34:14 +00:00
Richard Lewis
f8d7ab10fa Handle non-m.room.message event types. 2018-01-17 17:19:20 +00:00
Richard Lewis
b6f85fbf92 Don't treat sticker messages as info messages. 2018-01-17 16:52:10 +00:00
Michael Telatynski
192cba2b79
allow text&onSenderProfileClick for tileShape===quote
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-01-11 19:25:43 +00:00
Michael Telatynski
1bc9d344ae
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/nvl/rich_quoting
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/components/views/messages/TextualBody.js
2018-01-10 11:54:58 +00:00
Richard Lewis
5df9a01e64 Use m.room.sticker event. 2018-01-08 12:06:32 +00:00
Aidan Gauland
35780f5ae0 Remove use of deprecated React.PropTypes
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Luke Barnard
7f551f517b Add comments to _onDecrypted 2017-12-15 14:01:07 +00:00
Luke Barnard
a516c18cc5 Indicate event tile resize after rendering 2017-12-15 13:58:58 +00:00
Michael Telatynski
5c229b9ef8
DRY matrix.to link generation so it is all changeable in one class
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-12 23:33:40 +00:00
Michael Telatynski
0f85391587
Implement Rich Quoting/Replies
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-12-10 12:50:41 +00:00
Luke Barnard
196e1a4f66 Fix one variant of a scroll jump that occurs when decrypting an m.text 2017-12-08 15:25:14 +00:00
Michael Telatynski
c0002e7778
Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/state_events 2017-11-15 16:03:07 +00:00
Michael Telatynski
5563b71c47
differentiate between state events and message events
so that people can't fake state event types and have them rendered.

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-11-15 15:56:54 +00:00
Stefan Parviainen
8083dccfa5 De-partify SenderProfile
Signed-off-by: Stefan Parviainen <pafcu@iki.fi>

Also, text does not need to be EmojiText
2017-10-16 20:53:43 +02:00
Travis Ralston
c34b55c6c7 Merge branch 'develop' into travis/pinned_messages 2017-10-14 16:10:32 -06:00
Luke Barnard
d3f9a3aeb5 Run eslint --fix
Fixing 1000s of lint issues. Some rules cannot be `--fix`ed but this goes some way to linting the entire codebase.
2017-10-11 17:56:17 +01:00
Travis Ralston
3a58e1c066 Show pinned message changes in the timeline
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-09-29 08:56:21 -06:00
Michael Telatynski
755f22a7fa
shelving.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-14 17:39:18 +01:00
Michael Telatynski
8ab96ae2ff
render m.room.aliases events
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-09-14 13:43:46 +01:00
Luke Barnard
ebc1993530 Implement Flair
Add 14x14 group avatars next to sender profiles.
2017-08-30 11:10:49 +01:00
Luke Barnard
acc54b97f1 Implement TextualEvent tiles for im.vector.modular.widgets
E.g. "Bob added a Acme widget", "Susan removed a Giraffe widget"

The name is calculated by taking the `name` in the event content, falling back on the `type`, falling back on the previous content `type`. This is then capitalised.
2017-08-18 10:35:33 +01:00
Michael Telatynski
b19c1010aa
Merge branches 'develop' and 't3chguy/i18n_analytics' of github.com:matrix-org/matrix-react-sdk into t3chguy/i18n_analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/Analytics.js
2017-08-10 13:54:55 +01:00
Richard van der Hoff
da85cb9f45 Show unencrypted messages as unencrypted
Previously, we were special-casing outgoing messages such that they were shown
as encrypted even when encryption had failed for some reason.

There's no need for this: outgoing messages have a working isEncrypted() method
which we can use to show whether the event has been encrypted yet. Arguably we
could do better than an open padlock for events in the 'encrypting' send state,
but I'm not really sure what.
2017-08-08 17:49:41 +01:00
Michael Telatynski
bf98c0da7c
un-i18n Modal Analytics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-07-27 17:19:18 +01:00
Luke Barnard
08cc0c421d insert_displayname -> insert_mention 2017-07-20 18:02:54 +01:00
Luke Barnard
0419eff230 Insert pill onClick of timeline profile
When clicking someone in the timeline, insert a user pill instead of the plaintext "displayname:"
2017-07-20 15:46:36 +01:00
Richard van der Hoff
4998d1b359 Prepare for asynchronous e2e APIs
the js-sdk is making some of its APIs asynchronous, and adding an `initCrypto`
method which you have to call.

Particular methods we need to worry about are:

* `getStoredDevice`
* `getStoredDevicesForUser`
* `getEventSenderDeviceInfo`
* `isEventSenderVerified`
2017-07-18 23:47:36 +01:00
David Baker
bc8c2d442b WithMatrixClient -> withMatrixClient
because we're using it as a function rather than a React component
2017-07-07 11:34:20 +01:00
turt2live
a22f14e910 Use 12h timestamps when enabled in RR
Fixes vector-im/riot-web#4393 
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-06-22 08:54:34 -06:00
Luke Barnard
ce0977373e Merge pull request #1058 from matrix-org/luke/fix-event-id-state
Control currently viewed event via RoomViewStore
2017-06-08 18:10:29 +01:00
Luke Barnard
d3cf78ff5a Control currently viewied event via RoomViewStore
Fix for https://github.com/vector-im/riot-web/issues/4224

Due to the way `MatrixChat` does a state update when the `view_room` dispatch fires and a second update when `RoomViewStore` sends an update, the current event ID and room ID were becoming out of sync. The solution devised was to have the event ID managed by the `RoomViewStore` itself and do any defaulting there (for when we revisit a room that we saved scroll state for previously).

This required a few changes:
 - The addition of `update_scroll_state` in `RoomViewStore` allows the `RoomView` to save scroll state for a room before swapping to another one. Previously the caching of scroll state was done in `RoomView`.
 - The `view_room` dispatch now accepts an `event_id`, which dictates which event is supposed to be scrolled to in the `MessagePanel` when a new room is viewed. It also accepts `event_offset`, but currently, this isn't passed in by a dispatch in the app, but it is clobbered when loading the default position when an `event_id` isn't specified. Finally, `highlighted` was added to distinguish whether the initial event being scrolled to is also highlighted. This flag is also used by `viewRoom` in `MatrixChat` in order to decide whether to `notifyNewScreen` with the specified `event_id`.
2017-06-08 14:17:49 +01:00
Kegan Dougal
00df956ca2 Add remaining translations!
Every file has now been manually vetted by me. Due to the extent of
the changes, I've been unable to test all scenarios to make sure this
all works. :(
2017-06-08 14:08:51 +01:00
Matthew Hodgson
00750b4686 quick and dirty RoomAvatarEvent 2017-06-01 13:31:24 +01:00
daniel tygel
f4e5039e70 add string to translate 2017-05-30 19:01:23 -03:00
David Baker
c22978d033 Merge remote-tracking branch 'origin/develop' into dbkr/translations 2017-05-26 17:30:02 +01:00
David Baker
5c359e63ab Bulk change counterpart imports
to use languageHandler wrapper func
2017-05-25 11:39:08 +01:00
David Baker
d419c42a4f Squash merge https://github.com/matrix-org/matrix-react-sdk/pull/801 2017-05-23 15:16:31 +01:00
Kieran Gould
47e5e8d678 Moved isTwelveHour alllll the way up to TimelinePanel. 2017-05-19 23:04:37 +01:00
Kieran Gould
6b32975e0c Add 12 hour class to mx_EventTile 2017-05-19 22:36:13 +01:00
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