Commit Graph

288 Commits (fc6e5227aced6f801bc1f1ffa3c7cfc86d84ef6d)

Author SHA1 Message Date
J. Ryan Stinnett 3775dc0943 Add diagnostic log to catch events without an ID
This adds some temporary logging to investigate
https://github.com/vector-im/riot-web/issues/11120.
2019-10-29 17:32:22 +00:00
Michael Telatynski bc639312ec delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:32:12 +01:00
Michael Telatynski 70ff2bc9cd Switch to createReactClass: views/rooms and test/components. React 16 :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-06 15:04:46 +01:00
Michael Telatynski d99fb4796f avoid using import * as Matrix
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-06 14:04:33 +01:00
Michael Telatynski 224dac3ffb Remove withMatrixClient as we are committed to using Contexts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-05 12:26:31 +01:00
Michael Telatynski 1087e04bb5 Replace React.PropTypes with usage of the `prop-types` package
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-31 12:19:29 +01:00
J. Ryan Stinnett 599c49613f Remove reactions feature flag
Fixes https://github.com/vector-im/riot-web/issues/10282
2019-07-17 17:00:36 +01:00
J. Ryan Stinnett 674f33917f Remove editing feature flag
Part of https://github.com/vector-im/riot-web/issues/10282
2019-07-17 16:56:15 +01:00
Bruno Windels d0d327620b hide reactions for redacted events 2019-07-02 13:56:27 +02:00
J. Ryan Stinnett 91f707341a Tweak handler name to match others 2019-06-25 15:12:30 +01:00
Bruno Windels 5fa3f70fb4 feature flag for displaying edits as well 2019-06-21 18:32:15 +02:00
J. Ryan Stinnett 4ec7a8ddff Fix casing of TooltipButton
My brain can't deal with two different ways to write "Tooltip", so this
converges the naming to match the rest of the code base. Separate commits will
fix up the file names for case-insensitive file systems.
2019-06-19 11:26:13 +01:00
Bruno Windels 41e41269dc use EditorStateTransfer to pass on state to newly mounted editor 2019-06-12 18:52:34 +02:00
J. Ryan Stinnett bea845a80d
Merge pull request #3059 from matrix-org/jryans/read-receipts-relations-send-review
Advance read receipts into trailing events without tiles
2019-06-04 14:35:14 +01:00
J. Ryan Stinnett 96b213e7cb Advance read receipts into trailing events without tiles
This changes read receipt sending logic to allow it advance further into events
without tiles (such as edits or reactions) that may exist after the last
displayed event.

By allowing the read receipt to advance past such events, this also marks as
read any related notifications. For example, edits trigger notifications by
default since they are `m.room.message` events, and with this change, such edit
notifications can finally be marked read.

Part of https://github.com/vector-im/riot-web/issues/9745
2019-06-03 18:25:35 +01:00
J. Ryan Stinnett b309ebf99d Allow source tile handler for replacements
If the debugging mode of showing hidden events in the timeline is enabled, we
should also show replacements using the same view source tile as we do for
reactions. This allows easy debugging of replacement event data and also makes
the edit event look visually distinct from regular messages.

Fixes https://github.com/vector-im/riot-web/issues/9937
2019-06-03 16:29:20 +01:00
J. Ryan Stinnett f0d67e0454 Revert "Merge pull request #3019 from matrix-org/travis/sr/fix-timeline"
This reverts commit 9a1a9825b0, reversing
changes made to 62dc83310a.
2019-05-28 12:22:22 +01:00
Travis Ralston a7d2309286 Convert ternary to multiple if statements for clarity 2019-05-22 16:36:14 -06:00
Travis Ralston d571709fe8
Apply suggestions from code review
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-05-22 16:29:37 -06:00
Travis Ralston 09d195b2d1 Fix events not being spoken in the most complicated way possible
There's details in the comment body of this diff.

See https://github.com/vector-im/riot-web/issues/9747
2019-05-22 15:55:16 -06:00
Travis Ralston c55f083a28 Always mute timestamp from screen readers
The short time is still read out (eg: 15:24), however by ignoring the anchor we prevent the reader from saying the title of the containing span. This prevents readers saying "Wed May 22, 2019 at 15:24 15:24".

See https://github.com/vector-im/riot-web/issues/9747
2019-05-22 15:25:34 -06:00
Travis Ralston 8f6884ec15 Mute timestamps for irrelevant updates
Other fix for https://github.com/vector-im/riot-web/issues/5697

See https://github.com/vector-im/riot-web/issues/9747
2019-05-22 15:18:57 -06:00
Travis Ralston 6edf760943 Mute avatars and read receipts on event tiles
This reduces overall noise from the screen reader. It was reading the alt attribute from the sender avatar, which was just a mxid. The read receipts were just nonsensical noise.

Fixes https://github.com/vector-im/riot-web/issues/2716
Fixes https://github.com/vector-im/riot-web/issues/5697
See https://github.com/vector-im/riot-web/issues/9747
2019-05-22 15:18:51 -06:00
Travis Ralston 6c0213bb3d
Revert "Make the timeline less noisy for screen readers" 2019-05-22 10:54:51 -06:00
Travis Ralston 983214f4bf
Merge pull request #3007 from matrix-org/travis/sr/mute-timeline
Make the timeline less noisy for screen readers
2019-05-22 09:55:23 -06:00
Travis Ralston 68c4ee9374 Mute timestamps for irrelevant updates
Other fix for https://github.com/vector-im/riot-web/issues/5697

See https://github.com/vector-im/riot-web/issues/9747
2019-05-21 18:57:16 -06:00
Travis Ralston 4779144b2e Mute avatars and read receipts on event tiles
This reduces overall noise from the screen reader. It was reading the alt attribute from the sender avatar, which was just a mxid. The read receipts were just nonsensical noise.

Fixes https://github.com/vector-im/riot-web/issues/2716
Fixes https://github.com/vector-im/riot-web/issues/5697
See https://github.com/vector-im/riot-web/issues/9747
2019-05-21 18:56:46 -06:00
J. Ryan Stinnett 238e967470 Only show reactions in main message timeline
This fixes an error that crashed that notifications panel because it was trying
to read reactions, even though we currently don't aggregate them there. This
change is more explicit about exactly which views should try to show reactions.

Fixes https://github.com/vector-im/riot-web/issues/9713
2019-05-21 18:27:10 +01:00
Matthew Hodgson d3f06763b3
Merge branch 'develop' into matthew/twemoji 2019-05-20 16:38:44 +01:00
Bruno Windels 1368a5eb80
Merge pull request #2996 from matrix-org/bwindels/composerdesign
Message editing: apply design
2019-05-20 08:42:41 +00:00
Matthew Hodgson dc72641264 replace emojione with twemoji. completely untested & debugged & unoptimised 2019-05-19 15:23:43 +01:00
J. Ryan Stinnett 45cdf880b1 Change setting style 2019-05-17 17:43:08 +01:00
J. Ryan Stinnett 3a405701a3 Debug: Show all events 2019-05-17 16:34:01 +01:00
Bruno Windels 578a183f49 hide the action bar while editing 2019-05-17 15:35:28 +01:00
Bruno Windels ddefeae136 update design of editor to look as close to original tile (and design)
the buttons below the composer are overlayed onto the previous event.
In case of the last event, for now we make them not overflow, but make the
tile grow. The design says it should overlay on the main composer for the last
event tile, postponing that for a bit though as not sure what is the best way
to do that.
2019-05-17 15:33:11 +01:00
Bruno Windels 9a3752c571 show message editor in textual body instead of replacing event tile 2019-05-17 15:30:07 +01:00
Bruno Windels 5805a88ab9 adjust to js-sdk changes of marking original event as replaced 2019-05-15 11:54:26 +01:00
J. Ryan Stinnett af9fdbaeeb Rework `reactionsCreated` in `EventTile` to use state
This changes to use component state instead of `forceUpdate`, so that it's more
obvious why an update is happening here.
2019-05-13 14:52:55 +01:00
J. Ryan Stinnett 24209905e8 Test settings later for performance 2019-05-13 14:41:49 +01:00
J. Ryan Stinnett 37d2f60045 Listen for reaction collections when they are created
The `EventTile` for events without reactions now use `Event.relationsCreated` to
listen for a future time where they come in to being.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 8fdb59a909 Use basic read path from JS SDK for reactions
This displays existing reactions correctly in the action bar and reaction row,
but it doesn't yet update after a new reaction is sent.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett 0316deb6c5 Restore access to message quote option on first click
This repairs access to the "Quote" option of the message context menu by passing
down a getter so that we always access the most recent tile and reply thread
instances. This ensures the context menu uses the newest information about the
current event when determining menu options to show.

Fixes https://github.com/vector-im/riot-web/issues/9639
2019-05-07 12:59:53 +01:00
J. Ryan Stinnett 15c5893278 Display existing reactions below the message
This displays the existing reactions a message has from all users below the
message.

Since we don't currently have an API to actually get these events yet,
adds a temporary hook that looks for a specific message to inject some sample
data. This helps build out the UI for now and can be removed once it exists.

Fixes https://github.com/vector-im/riot-web/issues/9573
2019-05-02 12:05:17 +01:00
J. Ryan Stinnett ed8bbc7082 Extract message options button to action bar
This adds a new action bar component to hold multiple per-message actions. This
existing options button has moved to this new component, and is currently the
only action.
2019-04-29 15:20:50 +01:00
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