Commit graph

532 commits

Author SHA1 Message Date
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