Commit graph

244 commits

Author SHA1 Message Date
J. Ryan Stinnett
530c92e03d Rename event edit button to options button
This naming is clearer as it doesn't really edit at all (it shows a context
menu). This should also be less confusing with actual editing when it arrives.
2019-04-29 15:20:50 +01:00
Bruno Windels
4e382b1dd9 rename onWidgetLoad to onHeightChanged
as it's easy to confuse it with room widgets, but has nothing to do with it.
2019-03-07 17:02:19 +01:00
Bruno Windels
4d95af705d fix lint 2019-02-26 10:26:33 +01:00
Bruno Windels
77f979ed6d also pass permalinkCreator here 2019-02-25 18:43:08 +01:00
Bruno Windels
fb672ffb28 change handling of event permalinks in replies 2019-02-25 18:43:08 +01:00
Bruno Windels
31dda34e6b use new permalink class in share dialog & context menu 2019-02-25 18:43:08 +01:00
Bruno Windels
f7ea9cfeb2 rename all instances of permalinkCreator 2019-02-25 18:43:08 +01:00
Bruno Windels
29be28919d create permalink creator in roomview and pass it on to the event tiles 2019-02-25 18:43:08 +01:00
Travis Ralston
20cd198784 Only set e2e info callback if the event is encrypted
Fixes https://github.com/vector-im/riot-web/issues/8551
2019-02-22 10:31:14 -07:00
Travis Ralston
003d0eb0bf Show changes to related groups (flair) in the timeline 2019-02-21 17:03:15 -07:00
Bruno Windels
158e949165 add context menu option to show "event e2e info dialog" 2019-02-12 19:10:42 +01:00
Bruno Windels
08272bc75e make e2e icons clickable again 2019-02-12 18:58:02 +01:00
Travis Ralston
5d4406cbab Render join rules and guest access changes in the timeline
Fixes https://github.com/vector-im/riot-web/issues/8435
2019-02-07 12:14:58 -07:00
Bruno Windels
88ad780b6b update message e2e icons
also remove encrypted icon as header/composer already indicate encryption
2019-02-01 16:43:12 +01:00
J. Ryan Stinnett
20e296b20e Convert image URLs in React to require calls
This allows Webpack to insert the proper image URL after builds steps like
adding a hash and so on. The path you supply to `require` is relative to the JS
source file, just like any other would be.
2019-01-17 22:06:49 -06:00
Travis Ralston
e24d3cd671 Render a tile for tombstone events
Fixes https://github.com/vector-im/riot-web/issues/7997

This isn't super elegant, but it also provides some amount of utility for people. As users might leave the old room, it might be useful to see when exactly a room was upgraded. We should fix the underlying cause for infinite back pagination though.
2019-01-10 15:15:45 -07:00
David Baker
985966f8be Update async dialog interface to use promises
Hopefully makes the syntax a bit nicer. Also uses ES6 async import
rather than require.ensure which is now deprecated. Also also
displays an error if the component fails to load rather than falling
over in a heap, which is nice.
2018-11-21 16:56:44 +00:00
Bruno Windels
0767c278e7 put userId next to member in read receipt, fall back when member missing 2018-10-10 16:14:09 +02:00
Matthew Hodgson
c6fa8ea24c show canonical aliases in timeline, and set/remove implicit ones 2018-09-20 01:07:01 +01:00
Matthew Hodgson
dc7212ec2b switch back to simple TextForEvent
I haven't found anyone who can justify to me why we need
more complicated plurals for i18n (even in Polish) for
%(senderName)s added %(addedAddresses)s and removed %(removedAddresses)s as addresses for this room.
2018-09-17 18:20:12 +01:00
Matthew Hodgson
3b868064c7 merge in develop 2018-09-16 19:06:52 +01:00
David Baker
ab10b5493b Support room creation events
For https://github.com/vector-im/riot-web/issues/7164
2018-08-20 16:20:59 +01:00
Bruno Windels
7bbb967ddd
Merge pull request #2053 from matrix-org/dbkr/jitsi_always_on_screen
Implement always-on-screen capability for widgets
2018-07-13 11:14:37 +01:00
David Baker
5a5e967262 Fix avatars vanishing on hover
Turns out the z-index was to make the avatar appear above the
EventTile_line even though it comes before in the DOM (it's
absolutely positioned to overlap with it). Instead, just put
it afterwards in the DOM.
2018-07-12 17:48:49 +01:00
Bruno Windels
3e14cd2190
Merge pull request #2024 from matrix-org/t3chguy/improve_eventtile_error_handling
fix nullguard on EventTile, getComponent never returns falsey, it throws
2018-07-11 09:12:49 +01:00
Matthew Hodgson
ffec1b5a95 fix lint 2018-07-09 20:11:17 +01:00
Will Hunt
a6cff4a969 Show server bans in the timeline 2018-07-06 11:06:31 +01:00
Michael Telatynski
322b77b57f
don't throw, console.warn + dummy render instead
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-29 12:54:36 +01:00
Michael Telatynski
55f4f1723d
fix nullguard on EventTile, getComponent never returns falsey, it throws
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-27 11:44:11 +01:00
Michael Telatynski
f40802e9d8
Merge pull request #2017 from matrix-org/t3chguy/timestamp_share_dialog_stop
don't fire share dialog when clicking timestamp of event,
2018-06-26 17:46:52 +01:00
Michael Telatynski
67f803bc5f
don't fire share dialog when clicking timestamp of event,
it was tripping people up and broke search permalinks

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-26 16:59:49 +01:00
Michael Telatynski
aff2cc9065
EventTile:notif apply EmojiText to room name
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-23 01:21:42 +01:00
David Baker
6904c2bafe
Merge pull request #1948 from matrix-org/export_Group
Share Dialog
2018-06-15 10:52:27 +01:00
Michael Telatynski
7d7a6f3d9c
ShareDialog share Message, link to timestamp and permalink in ctx menu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 13:35:35 +01:00
David Baker
5804040a9b
Merge pull request #1959 from matrix-org/t3chguy/faded_encrypting_padlock
fix message appears unencrypted while encrypting and not_sent
2018-06-14 10:49:14 +01:00
Michael Telatynski
5cc2361737
change not_sent e2e lock to match colour of text
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-13 15:52:50 +01:00
Michael Telatynski
d4b2f06a63
fix message appears unencrypted while in flight
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-13 13:51:04 +01:00
Michael Telatynski
846c14062a
show redacted stickers like other redacted messages
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-13 09:28:35 +01:00
Michael Telatynski
f0b7fd58b9
delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-06 19:28:18 +01:00
Michael Telatynski
f68036a4fb
Replies: un-break click-to-mention on SenderProfile for reply&preview
Fixes #6670

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-06 19:18:41 +01:00
Michael Telatynski
71a12b6bbb
fix getDefaultProps mixup
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-03 11:23:41 +01:00
Michael Telatynski
f2102e283c
Merge branches 'develop' and 't3chguy/m.relates_to' of github.com:matrix-org/matrix-react-sdk into t3chguy/m.relates_to 2018-05-02 13:08:38 +01:00
Michael Telatynski
ec4ec4717d
clean up EventTile:onWidgetLoad optional/required mess
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-01 18:15:12 +01:00
Eric Newport
e037cf0063 namespace CSS better and fix bug 2018-04-30 12:22:16 -04:00
Eric Newport
55566b35a2 convert attribute to class 2018-04-28 12:39:25 -04:00
Michael Telatynski
68dd57f56e
rename two methods
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:47:18 +01:00
Eric Newport
d42fa9d17a Hide inline encryption icons except when hovering over a message
Closes https://github.com/vector-im/riot-web/issues/2882

This is a redo of https://github.com/matrix-org/matrix-react-sdk/pull/1707 (see associated discussion there and here: https://github.com/vector-im/riot-web/pull/5988)

I tried several times to resolve the conflicts correctly, but could not. Thus, fresh PR.
2018-04-22 22:30:37 -04:00
Michael Telatynski
a90bd6cd4f
Allow collapsing ReplyThread from MessageContextMenu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-13 12:28:58 +01:00
Michael Telatynski
c77807bd22
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/i18n/strings/en_EN.json
#	src/i18n/strings/eu.json
#	src/i18n/strings/fr.json
#	src/i18n/strings/lv.json
#	src/i18n/strings/ru.json
#	src/i18n/strings/zh_Hant.json
2018-04-12 09:48:06 +01:00
Luke Barnard
01dd494f50 Make stickers/messages continuations of each other 2018-04-06 17:47:44 +01:00
Luke Barnard
008572afe1 Revert "Handle non-m.room.message event types."
This reverts commit f8d7ab10fa.
2018-04-06 16:42:59 +01:00
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