Commit graph

606 commits

Author SHA1 Message Date
Bruno Windels
0d2f9c4215 add verification request tile + styling 2019-11-07 19:54:56 +01:00
Travis Ralston
86be607e92 onTileUpdate -> onMessageAllowed
We keep onTileUpdate in MessgeEvent because it's a generic thing for the class to handle. onMessageAllowed is slightly different than onShowAllowed because "show allowed" doesn't quite make sense on its own, imo.
2019-11-06 10:52:00 -07:00
Michael Telatynski
6d3b563119 Add comments regarding tab-index=-1 2019-11-04 10:16:16 +00:00
Michael Telatynski
fd4cdd0dec Improve A11Y of timeline. Show TS & Actions on focus-within 2019-11-01 10:50:58 +00:00
Travis Ralston
3e4a721111 Appease the linter 2019-10-31 16:27:45 -06:00
Travis Ralston
11068d189c Hide messages blocked by ban lists 2019-10-31 16:19:42 -06:00
Michael Telatynski
8d9dc195d5 Make ARIA happier with DateSeparator and tidy ELS
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:32:10 +01:00
Michael Telatynski
93ecc9839b Fix linty failures 2019-10-22 13:49:02 +01:00
Tulir Asokan
318754d31c Reorganize reaction sending and show if emoji is selected
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-15 19:07:04 +03:00
Tulir Asokan
7acae6dc32 Autofocus search and fix bugs
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-15 18:22:23 +03:00
Tulir Asokan
824685ae64 Redact existing reaction instead of trying to double-react
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-15 00:15:18 +03:00
Tulir Asokan
497b779334 Add full emoji picker for reactions
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 00:32:11 +03:00
Travis Ralston
0491b742c2 Use a mask instead of an img for "Show image" eye
See https://github.com/matrix-org/matrix-react-sdk/pull/3492#pullrequestreview-296223646
2019-10-02 12:52:07 -06:00
Travis Ralston
37d16db0f0 Elsify 2019-10-02 12:46:21 -06:00
Travis Ralston
a719623bb9 Appease the linter 2019-10-01 17:06:55 -06:00
Travis Ralston
4b0596b6b7 Apply lipstick to hidden image design 2019-10-01 17:00:01 -06:00
Travis Ralston
3c589cffec Merge branch 'develop' into travis/hide-images 2019-10-01 09:31:54 -06:00
Travis Ralston
fc66e69c02 Rename RoomPermalinkCreator -> Permalinks due to scope
The file handles more than just a RoomPermalinkCreator, so we should name it accordingly.
2019-09-30 20:39:58 -06:00
Travis Ralston
6f5ccd4c12 Minor comment updates 2019-09-30 20:38:03 -06:00
Travis Ralston
f879185aef Move permalink host check into permalink constructors
Without the requirement for a room to work
2019-09-30 12:53:45 -06:00
Travis Ralston
f9d5e89017 Move early parts of matrix.to bits into its own class 2019-09-30 12:37:13 -06:00
Travis Ralston
64aa6695f5 Move matrix-to.js to utils/permalinks/RoomPermalinkCreator
Just a little bit of refactoring to make the feature of custom prefixes a bit easier.
2019-09-30 12:16:46 -06:00
Travis Ralston
59b29e4a7f Add an option to hide image previews
Applies to images, stickers, and URL previews.

Fixes https://github.com/vector-im/riot-web/issues/10735
2019-09-27 21:08:31 -06:00
Michael Telatynski
8d1d3090f3 Improve keyboard accessibility using :focus-visible CSS polyfill
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-27 09:00:54 +01:00
Michael Telatynski
8ec0ffea3a Make the message context menu more accessible
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-26 14:24:10 +01:00
Michael Telatynski
b243004a6c Switch to createReactClass: *everything else*. React 16 :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-06 18:38:11 +01:00
Sorunome
fe9ae46ffb
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into soru/spoilers 2019-08-28 20:23:24 +02:00
Travis Ralston
831da696ad
Merge pull request #3301 from matrix-org/travis/integs/base
Refactor integration manager handling into a common place
2019-08-13 09:00:22 -06:00
David Baker
12eeb20574
Merge pull request #3291 from matrix-org/t3chguy/fix_RoomAvatarEvent
Fix wrong default-letter-avatar for RoomAvatarEvent
2019-08-13 09:32:26 +01:00
Travis Ralston
ffa49df889 Refactor integration manager handling into a common place
It was already in a common place, but this is the boilerplate for supporting multiple integration managers, and multiple integration manager sources. 

For https://github.com/vector-im/riot-web/issues/4913 / https://github.com/vector-im/riot-web/issues/10161
2019-08-09 16:08:06 -06:00
Michael Telatynski
72a83a8e6e Add mount-guards to MImageBody
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-09 14:51:07 +01:00
Michael Telatynski
ee3542453e Fix RoomAvatarEvent historic fallback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-09 11:31:04 +01:00
Michael Telatynski
423a74c99c Clean up implementation
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-08 20:21:53 +01:00
Michael Telatynski
28b42d512a Use the room name rather than sender name for fallback room avatar event
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-08 20:07:38 +01:00
Bruno Windels
299cf8542c Split MessageEditor in edit-specifics & reusable part for main composer 2019-08-05 15:31:18 +02:00
Bruno Windels
3e07d29926
Merge pull request #3261 from matrix-org/bwindels/edithistorywarning
Get rid of warning of required prop
2019-07-31 11:57:47 +00:00
J. Ryan Stinnett
c338f8bf1f Add room context to test 2019-07-31 11:17:28 +01:00
J. Ryan Stinnett
ddf558b3ed Fix context when using subtree of components 2019-07-31 11:10:49 +01:00
Bruno Windels
17e838e23b this is optional, and not provided for first edit 2019-07-31 09:47:02 +02:00
Michael Telatynski
4517fea496 Introduce RoomContext for sharing state between RoomView and children
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-31 00:47:38 +01:00
Michael Telatynski
883b3d1563 iterate PR based on feedback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-29 22:30:07 +01:00
Michael Telatynski
f45b1bfdda Fix StubRoom for react-sdk tests
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-29 13:18:02 +01:00
Michael Telatynski
856e161c8b add Debug
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-29 12:54:09 +01:00
Michael Telatynski
48f219f090 null-guard
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-29 12:28:30 +01:00
Michael Telatynski
7b2e18ff7c Show MessageActionBar buttons conditionally on room state permissions
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-29 12:13:23 +01:00
Bruno Windels
3753e5261d Implement diffing html messages in the edit history 2019-07-24 11:28:56 +02:00
Bruno Windels
c713172a37 add proptypes 2019-07-19 16:34:50 +02:00
Bruno Windels
de1c4e0cfe better naming 2019-07-19 16:34:39 +02:00
Bruno Windels
f305d8ac08 Basic diff visualisation for plain text edits 2019-07-19 16:09:23 +02:00
Bruno Windels
aca41fe80a dont show remove button for original event in edit history 2019-07-18 14:09:29 +02: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
J. Ryan Stinnett
9b3848d083
Merge pull request #3200 from matrix-org/jryans/stylelint-all-files
Run stylelint on all SCSS files
2019-07-11 09:38:18 +01:00
J. Ryan Stinnett
38d6953bf6 Manually fix remaining stylelint issues 2019-07-10 16:56:40 +01:00
Bruno Windels
31723e9e5b
Merge pull request #3194 from matrix-org/bwindels/fix-history-redactions
Don't try to call bodyToHtml with an empty content
2019-07-09 15:05:03 +00:00
Bruno Windels
f03187190e Don't try to call bodyToHtml with an empty content
with the stripReply flag, this crashes.
2019-07-09 15:00:26 +02:00
Bruno Windels
58d7ed02b7 use method that also takes server aggregations into account for tooltip date 2019-07-09 11:31:29 +02:00
Bruno Windels
e601037cd2 don't show reply fallback in edit history 2019-07-08 15:32:38 +02:00
Bruno Windels
7a482461dd
Merge pull request #3180 from matrix-org/bwindels/history-actions
Edit history actions
2019-07-08 08:19:27 +00:00
Bruno Windels
1af2ca6b36 constistent jsx bracket and indent styling 2019-07-08 10:12:26 +02:00
Bruno Windels
cf11a3758f set analyticsInfo for dialogs 2019-07-08 10:12:04 +02:00
J. Ryan Stinnett
eb0e1eade4 Clamp reaction content width to at most 100px
Part of https://github.com/vector-im/riot-web/issues/10256
2019-07-05 16:18:16 +01:00
J. Ryan Stinnett
2a8f9a81f7 Allow diplayed reaction values to contain anything
Part of https://github.com/vector-im/riot-web/issues/10256
2019-07-05 16:18:06 +01:00
Bruno Windels
70334b69ec implement view source for edits 2019-07-05 16:11:15 +02:00
Bruno Windels
f4a8314c4f make dom tree similar to eventtile so red lozenge style applies 2019-07-05 16:05:40 +02:00
Bruno Windels
0aa1252d01 monitor associated send status for edit history events
to update local echo if needed
2019-07-05 16:04:34 +02:00
Bruno Windels
8468f7cdc3 support redactions in edit history dialog 2019-07-04 16:33:05 +02:00
Bruno Windels
375976575b add redact button 2019-07-04 11:07:22 +02:00
J. Ryan Stinnett
33425240f6
Merge pull request #3152 from matrix-org/jryans/reactions-show-all
Limit reactions row on initial display
2019-06-28 15:12:48 +01:00
J. Ryan Stinnett
f9e158ff68 Rename link to button 2019-06-28 14:47:41 +01:00
J. Ryan Stinnett
04398b7853 Tweak limits so show all reveals more space than itself 2019-06-28 14:46:57 +01:00
J. Ryan Stinnett
59b4a3398d Limit reactions row on initial display
This limits the reactions row below messages to initially show at most 8 keys.
For those messages with more than that, a "Show all" option appears to reveal
all the keys.

Fixes https://github.com/vector-im/riot-web/issues/9570
2019-06-27 13:17:23 +01:00
Bruno Windels
c0e9edcf40 get decrypted content if needed 2019-06-27 12:33:29 +02:00
Bruno Windels
c9c84016cb move EditHistoryMessage to messages directory 2019-06-26 16:17:25 +02:00
Bruno Windels
54de0b298b add "Click to see edits." to tooltip 2019-06-26 16:13:32 +02:00
Bruno Windels
e54881aa24 WIP 2019-06-26 11:59:56 +02:00
Bruno Windels
8b5f07e63d open edit dialog on clicking (edited) 2019-06-26 11:59:56 +02:00
J. Ryan Stinnett
93384f91f5 Show reaction title and shortcode on hover
This shows the title and shortcode for the hovered reaction at the bottom of the
tooltip. If nothing is hovered, a blank space is shown for now, but will
eventually become a link to a full emoji picker in future work.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 18:15:03 +01:00
J. Ryan Stinnett
c1821fabd3 Remove toggling reaction dimensions
This removes the v1 Reactions UX which only allowed you to choose only one emoji
out of each pair. It is replaced by a different UX inside a tooltip and without
these constraints.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 16:23:31 +01:00
J. Ryan Stinnett
fd2723585f Add quick reaction buttons in tooltip
This adds the set of quick reactions as buttons in a new tooltip accessed via
the react action in the message action bar.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 16:23:13 +01:00
J. Ryan Stinnett
91f707341a Tweak handler name to match others 2019-06-25 15:12:30 +01:00
J. Ryan Stinnett
8926992feb Add react button to action bar
This adds a (temporarily non-functional) react button to the action bar.

Part of https://github.com/vector-im/riot-web/issues/9753
2019-06-25 15:12:30 +01:00
Bruno Windels
497ba1ecd4 prevent @room pills being applied multiple times when rerendering 2019-06-14 18:28:44 +02:00
Bruno Windels
3d944b715e
Merge pull request #3097 from matrix-org/bwindels/edit-unsent
Edit unsent messages
2019-06-13 14:00:46 +00: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
413bff084c
Merge pull request #3087 from matrix-org/jryans/context-menu-clipping
Align message context menu to right and vertically where space available
2019-06-12 10:19:47 +01:00
J. Ryan Stinnett
f89a4b688f Align message context menu vertically
This aligns the message context menu on either the top or the bottom of the
button that triggers, depending on which side has more space available to fit
the menu.

Fixes https://github.com/vector-im/riot-web/issues/9624
2019-06-10 16:29:22 +01:00
J. Ryan Stinnett
0355c91797 Align message context menu to right
This changes the message context menu to align the right edge of the menu with
the right edge of the button that opens it, which should keep all menu options
inside the viewport, even if they are very wide.

Part of https://github.com/vector-im/riot-web/issues/9624
2019-06-10 16:14:29 +01:00
J. Ryan Stinnett
73d2d78c33 Recheck message actions on decrypt
This changes the message action bar to force an update after an event decrypts,
since it's quite likely that changes the set of available actions.

Fixes https://github.com/vector-im/riot-web/issues/9991
2019-06-10 12:49:37 +01:00
J. Ryan Stinnett
5581b56cfe Restrict reactions to a single emoji
While the protocol supports more complex strings, in Riot we only want to
display single emoji.

Fixes https://github.com/vector-im/riot-web/issues/9916
2019-06-05 18:35:43 +01:00
J. Ryan Stinnett
c8cd1f30dd Fix live updates to reaction row buttons
This makes the reaction row buttons take the current count as prop as an easy
way of ensuring they always trigger an update when the count changes.

Fixes https://github.com/vector-im/riot-web/issues/9954
2019-06-05 14:54:26 +01:00
Bruno Windels
a5eca6cf79 override font for usercontent download link 2019-05-29 11:02:38 +02: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
Slavi Pantaleev
3f60b4336f Do not try to request thumbnails with non-integer widths
Issue described in https://github.com/vector-im/riot-web/issues/9690.

With certain `window.devicePixelRatio` values
(e.g.  `1.5789473684210527`), the calculated thumb width/height
would be a non-integer value.

Passing such values to `client.mxcUrlToHttp()` causes it to
generate URLs to the thumbnail API with non-integer values.
As per the spec, non-integer values are forbidden for that API and a
400 HTTP response is returned (`Query parameter b'width' must be an
integer`).

Fixing matrix-js-sdk's `mxcUrlToHttp()` to sanitize such values
would also be a good idea and likely fix more than just matrix-react-sdk
and riot-web. Still, it feels like matrix-react-sdk should play nice
as well, and not request thumbnails for weird widths/heights.

Signed-off-by: Slavi Pantaleev <slavi@devture.com>
2019-05-27 11:06:10 +03: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
Sorunome
d8f4512439
add basic spoiler support 2019-05-22 20:41:27 +02: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
Bruno Windels
ff61376c07
Merge pull request #3004 from matrix-org/bwindels/update-link-previews-after-edit
Message editing: update link previews after editing
2019-05-22 14:17:34 +00:00
Bruno Windels
6b1134bdf0 add matrix foundation copyright header 2019-05-22 16:16:32 +02: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
Bruno Windels
1a5bcb4908 don't need this as we prevent unneeded updates in shouldComponentUpdate 2019-05-21 16:56:26 +02:00
Bruno Windels
72c1725f98 this is already done as part of _applyFormatting 2019-05-21 16:56:05 +02:00
J. Ryan Stinnett
18d444d2e7 Remove reacted with text when shortcode missing
If we don't have the shortcode for some emoji, don't show any "reacted with X"
text in the reaction tooltip.

Fixes https://github.com/vector-im/riot-web/issues/9786
2019-05-21 15:08:11 +01:00
Bruno Windels
2d4d608ed6
Merge pull request #2997 from matrix-org/bwindels/pill-avatars
Message editing: render avatars for pills in the editor
2019-05-21 12:11:06 +00:00
Bruno Windels
b00a38a1e5 apply mx_EventTile_content to editor, so it gets the same right margin
this way we don't have to include it in the magic number
2019-05-21 12:18:20 +02:00
Matthew Hodgson
d3f06763b3
Merge branch 'develop' into matthew/twemoji 2019-05-20 16:38:44 +01:00
J. Ryan Stinnett
1bc9badeac Limit reaction sender tooltip to 6 people
This limits the number of senders shown in the reaction sender tooltip shown
when hovering a reaction to 6 people followed by "and N others" for the rest.

Fixes https://github.com/vector-im/riot-web/issues/9722
2019-05-20 16:02:10 +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
Bruno Windels
0c0052d06e re-apply formatting when editor is closed 2019-05-20 10:19:29 +02:00
Matthew Hodgson
81338306b0 fix lint 2019-05-19 21:00:14 +01:00
Matthew Hodgson
dc72641264 replace emojione with twemoji. completely untested & debugged & unoptimised 2019-05-19 15:23:43 +01:00
J. Ryan Stinnett
3a87f53a3c
Merge pull request #2993 from matrix-org/jryans/devtools-event-source-in-timeline
Add debug feature to show hidden events in timeline
2019-05-18 19:37:58 +01:00
J. Ryan Stinnett
5144907983 Fix indent 2019-05-17 17:44:11 +01:00
J. Ryan Stinnett
3a405701a3 Debug: Show all events 2019-05-17 16:34:01 +01:00
Bruno Windels
5adae63555 don't apply formatting to body when showing editor in TextualBody
it throws
2019-05-17 16:01:30 +01:00
Travis Ralston
7a244b85c1
Merge pull request #2986 from matrix-org/travis/sr/reactions
Mute screen readers over reactions
2019-05-17 08:40:53 -06:00
Bruno Windels
9a3752c571 show message editor in textual body instead of replacing event tile 2019-05-17 15:30:07 +01:00
J. Ryan Stinnett
43c9e6d942 Reactions / editing tooltip tweaks 2019-05-17 15:10:35 +01:00
J. Ryan Stinnett
603e6b7055 Adjust edited tooltip to use shared styles 2019-05-17 12:19:02 +01:00
J. Ryan Stinnett
059988ff5c Extract tooltip styling to a shared class
We want to use the same styling with edited tooltip as well, so this extracts
the shared bits.
2019-05-17 12:11:01 +01:00
J. Ryan Stinnett
3da1f73ea4 Add a basic tooltip showing who reacted
This adds a first attempt at tooltip showing who reacted to a message. It
doesn't limit senders or position the tooltip nicely, but the info is there at
least.

Part of https://github.com/vector-im/riot-web/issues/9722
2019-05-17 12:11:01 +01:00
Bruno Windels
4a6725d4c2 Message editing: show (edited) marker on edited messages, with tooltip 2019-05-17 11:36:36 +01:00
Travis Ralston
82bd893f03 Mute screen readers over reactions 2019-05-16 16:36:23 -06:00
J. Ryan Stinnett
006d5d7591 Fix crash for null reactions set 2019-05-16 13:57:02 +01:00
J. Ryan Stinnett
e942939be9 Listen for removed relations
The JS SDK has learned how to remove relations when cancelled, so we should also
listen for those as well.

Part of https://github.com/vector-im/riot-web/issues/9731
2019-05-16 13:03:07 +01:00
J. Ryan Stinnett
2e7e71556b Annotations by sender is now a Set 2019-05-16 12:45:41 +01:00
J. Ryan Stinnett
0e369bd12e
Merge pull request #2977 from matrix-org/jryans/encrypted-reactions
Use `getRelation` helper
2019-05-16 09:45:09 +01:00
J. Ryan Stinnett
33885cb864 Use getRelation helper
Use the `getRelation` helper to ensure we always read relation info from the
wire content as required in E2E rooms.
2019-05-16 09:25:33 +01:00
Bruno Windels
d73f547f55 reapply pills, link preview, code highlighting, ... after edit 2019-05-15 15:55:03 +01:00
Bruno Windels
b081a3156f dont show edit button for messages that are not your own 2019-05-15 15:53:49 +01:00
Bruno Windels
5805a88ab9 adjust to js-sdk changes of marking original event as replaced 2019-05-15 11:54:26 +01:00
Bruno Windels
edc100163f
Merge pull request #2952 from matrix-org/bwindels/message-edit-editor
Initial support for editing messages
2019-05-15 09:23:01 +00:00
Travis Ralston
92c67cdcab
Merge pull request #2963 from matrix-org/travis/permalink-without-room
Support a backup room ID in PermalinkCreator
2019-05-14 10:28:26 -06:00
Bruno Windels
036cb02c0e add feature flag 2019-05-14 15:39:24 +01:00
Bruno Windels
6599d605cd wire up editor component (somewhat hacky) 2019-05-14 15:38:16 +01:00
J. Ryan Stinnett
f19e70c219 Add comment about thumbnailing for GIFs 2019-05-14 13:55:38 +01:00
Travis Ralston
1584ab42c2 Support a backup room ID in PermalinkCreator
In the case of room upgrades, it is possible the client is trying to render the room create event, but the user has never been in the old room. This results in an error because the PermalinkCreator cannot possibly figure out a room ID. 

Instead, we'll feed the creator an alternate room ID to try if the room object can't be provided.

Fixes https://github.com/vector-im/riot-web/issues/9636
2019-05-13 14:12:58 -06:00
J. Ryan Stinnett
7881369b98 Always thumbnail for GIFs
When displaying a GIF, we always want to thumbnail so that we can properly
respect the user's GIF autoplay setting (which relies on thumbnailing to produce
the static preview image).

Fixes https://github.com/vector-im/riot-web/issues/9658
2019-05-13 18:28:57 +01:00
J. Ryan Stinnett
9d9a41b263 Save content.info as a local for readability 2019-05-13 18:00:52 +01:00
J. Ryan Stinnett
e22bd45608 Clarify ReactionsRow forceUpdate usage 2019-05-13 15:00:43 +01:00
J. Ryan Stinnett
33513a95d7 Change to componentDidUpdate to process first reaction
This changes to "did update" and also calls the reaction change handler to
ensure that we update the state of my reactions (to know which were sent by
you).
2019-05-10 17:59:17 +01:00
J. Ryan Stinnett
dc4fccd291 Send and redact reaction events
This updates both the reaction row and action bar UIs to send and redact
reaction events as appropriate based on user interactions.

Fixes https://github.com/vector-im/riot-web/issues/9574
Fixes https://github.com/vector-im/riot-web/issues/9572
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
39bd0d8bb3 Listen for additional reactions in existing collection
The various reaction UI bits will now listen for `Reactions.add` for new
reactions just like with redactions.

Part of https://github.com/vector-im/riot-web/issues/9572
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
ce35741030 Remove redundant key vs. content in ReactionDimension
This simplifies `ReactionDimension` by using the emoji string everywhere instead
of keeping a separate text string as well. It should improve readability as
well, as the reaction events also have a field `key` which was the emoji
content, which was easy to confuse.
2019-05-10 17:19:27 +01:00
J. Ryan Stinnett
6a59143ffb Update reactions when redacted
This updates the reaction state in the reaction row and action bar when a
reaction is redacted.

Part of https://github.com/vector-im/riot-web/issues/9574
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
576241236c Extract ReactionDimension out of MessageActionBar
The reactions bits were cluttering up `MessageActionBar` so they have now been
extracted to a separate component.
2019-05-08 13:53:41 +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
87f737b8a3 Increment an existing reaction
This allows you to increment an existing reaction below a message by clicking on
it.

At the moment, this is not linked to the action bar, so they each are using
local state. We'll likely want to add some mechanism so that we can local echo
to both of these UI areas at the same time, but that can be done separately.

Fixes https://github.com/vector-im/riot-web/issues/9486
2019-05-02 12:05:17 +01:00