Commit graph

26 commits

Author SHA1 Message Date
Michael Telatynski
76afc1100a Convert to Typescript and move from ClientPeg to Context 2021-05-13 14:13:00 +01:00
Michael Telatynski
87ae47bd61 tweak reactions row some more, third try lucky 2021-05-13 13:59:10 +01:00
Michael Telatynski
36633ec025 Tweak alignment of reactions row, move add reaction to right and only show on hover 2021-05-13 13:32:38 +01:00
Michael Telatynski
b5fa4d88bf Add extra add reactions button to encourage more diverse reactions to content 2021-05-13 10:56:51 +01:00
Travis Ralston
fc5b1ed9d6 Batch of views getting replaceableComponent decorators 2021-03-08 20:23:39 -07:00
Travis Ralston
042bd35d79 Fix MatrixClientPeg imports 2019-12-22 21:15:54 -07:00
Travis Ralston
d56f0f2a25 Convert many imports to handle ES6 exports
Reliant upon https://github.com/matrix-org/matrix-react-sdk/pull/3761
2019-12-22 21:04:42 -07:00
Marco Zehe
78555ed422 Make reaction buttons more accessible
Fixes vector-im/riot-web/issues/11608.

This patch:

1. Turns the container of reaction buttons into a toolbar.
2. Makes each button span into a button with a tabindex and an aria-label.
3. Constructs an alternative label that differs slightly from the text displayed by the tool tip:
   * It uses the names of the people who reacted.
   * It puts a space before the "reacted with" text.
   * It uses the actual emoji characters, not the converted colon-delimited shortNames, because the emojis usually tell blind users more about the expression.
   * It omits the number of reactions, since that information is already conveyed by the names.

Signed-off-by: Marco Zehe <marcozehe@mailbox.org>
2019-12-06 15:58:28 +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
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
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
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
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
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
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
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
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