Commit graph

214 commits

Author SHA1 Message Date
J. Ryan Stinnett
6d932e1352 Fix lint errors 2021-01-14 17:38:06 +00:00
J. Ryan Stinnett
658a8dfa99 Use device storage for allowed widgets if account data not supported
With guest accounts, account data is not available, so we use device storage to
hold allowed widgets as a good enough place.

Fixes https://github.com/vector-im/element-web/issues/16145
2021-01-14 17:30:25 +00:00
David Baker
e2111d9161
Merge pull request #5532 from matrix-org/dbkr/dtmf
Add in-call dialpad for DTMF sending
2021-01-13 13:07:27 +00:00
David Baker
4b43929aa3 Add in-call dialpad for DTMF sending
Requires https://github.com/matrix-org/matrix-js-sdk/pull/1573
2021-01-04 20:01:43 +00:00
David Baker
a33be00c08 Basic call transfer initiation support
Adapt the InviteDialog to select a transfer target

Doesn't support supplying a roo mID fr the transfer: just leaves
the transferee to work out how to contact the target themselves.

MSC2747 (matrix-org/matrix-doc#2747)
Requires https://github.com/matrix-org/matrix-js-sdk/pull/1558
2020-12-15 14:59:06 +00:00
David Baker
5282c6bbe8 Merge remote-tracking branch 'origin/develop' into dbkr/line_1_2 2020-12-10 12:36:11 +00:00
David Baker
4a009d480d Merge remote-tracking branch 'origin/develop' into dbkr/hold_ui 2020-12-08 11:48:14 +00:00
J. Ryan Stinnett
c13891c670
Merge pull request #5260 from orangecms/redact-with-reason
add support for giving reason when redacting
2020-12-04 15:13:40 +00:00
David Baker
6916b5d7c6 Merge remote-tracking branch 'origin/develop' into dbkr/hold_ui 2020-12-03 17:57:22 +00:00
David Baker
0b15ab06d8 Merge remote-tracking branch 'origin/develop' into dbkr/line_1_2 2020-12-03 17:56:39 +00:00
David Baker
1ce63f0fa7 Line 1 / 2 Support
Support one active call plus one call on hold
2020-12-03 17:45:49 +00:00
Travis Ralston
bd1de8d45b Require a room ID for WidgetStore's pinned widget contracts
This should alleviate https://github.com/vector-im/element-web/issues/15705 from happening, though the cause is still unknown.

Requiring a room ID is safe for this because only room widgets can be pinned, and widget IDs are not globally unique which means from a logical standpoint the contract still makes sense here.
2020-12-01 13:05:48 -07:00
David Baker
2a02e57a95 Add UI for hold functionality 2020-11-26 14:35:09 +00:00
Travis Ralston
b4de01b1f1 Don't let users accidentally redact ACL events
Fixes https://github.com/vector-im/element-web/issues/15633
Fixes https://github.com/vector-im/element-web/issues/15632

Slightly more information is in the issues above and in the diff, however the short version is redacting an ACL event can obliterate a room which is bad.
2020-11-02 12:55:59 -07:00
Michael Telatynski
da93be4677 Iterate Widget Context Menu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-16 11:51:27 +01:00
Michael Telatynski
f198b95579 Iterate PR; tidy and improve widget context menu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-15 15:24:42 +01:00
Michael Telatynski
37558f1f0d Improve the context menu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-12 09:51:49 +01:00
Michael Telatynski
ada6d1aa46 Iterate PR
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-09 08:42:21 +01:00
Michael Telatynski
29e3881fb3 Iterate design and fix post-merge conflict
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-07 10:36:45 +01:00
Michael Telatynski
ed30750f63 Extract RoomWidgetContextMenu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-09-30 15:38:35 +01:00
Daniel Maslowski
43ff97c178 Add support for giving reason when redacting
Signed-off-by: Daniel Maslowski <info@orangecms.org>
2020-09-28 23:29:33 +02:00
David Baker
eeb4c5696f Don't show 'unpin' for persistent widgets
This will mostly fix https://github.com/vector-im/element-web/issues/15139
although it could still break in a race condition.
2020-09-10 14:30:35 +01:00
Michael Telatynski
98b59fb217 Consolidate all the work thus far 2020-09-08 15:43:38 +01:00
Michael Telatynski
72498df28f Remove create-react-class 2020-08-29 12:14:16 +01:00
Travis Ralston
c815a370e7 Remove some unused components
We no longer have tinting support, so remove it. We still need the `Tinter` to exist though as it's used in quite a few places (though does nothing). Similarly, we have to keep the `roomColor` setting due to it being used in a few places - another PR can take away the tinter support properly.

The room tile context menu and top left menu are artifacts of the old room list.

The end to end tests weren't failing before as the code path is unused, however it seems worthwhile to keep it as we will eventually need it.
2020-08-20 20:47:02 -06:00
Travis Ralston
96087d61f6 Convert feature setting usages to regular settings 2020-08-17 13:12:18 -06:00
Michael Telatynski
d126f5c1e6 tidy up IconizedContextMenu CSS 2020-08-04 21:42:45 +01:00
Michael Telatynski
b30ce0355e Factor out Iconized Context Menu for reusabilit 2020-08-04 21:42:39 +01:00
David Baker
c6418fb083 A visit from the lint bunny 2020-07-15 10:51:57 +01:00
Bruno Windels
f2f813c43c make tag panel context menu icons follow text color 2020-07-10 10:20:26 +02:00
Bruno Windels
1ef73958f3 change hide community icon in context menu 2020-07-07 12:16:31 +02:00
Bruno Windels
8fd9dbf1d8 moar icon changes 2020-07-06 18:28:54 +02:00
David Baker
7e45a71a8a Remove EncryptedEventDialog
https://github.com/matrix-org/matrix-react-sdk/pull/4412 disabled it
when cross signing was enabled so it is essentially gone now anyway.

Fixes https://github.com/vector-im/riot-web/issues/11752
2020-05-26 13:37:57 +01:00
Travis Ralston
e4835c4b03 Demonstrate dis.fire() with view_user_settings
Like a5f3318f3b, this proves that the new dispatcher conversion works for fire-and-forget style dispatches too. This is another obvious-if-broken and generally safe conversion to make.

Other actions which can be dispatched this way have been excluded for reasons mentioned in the Action enum's comments.
2020-05-13 21:08:08 -06:00
Travis Ralston
90a898d03f Move dispatcher into a subdirectory
We're expecting to have a whole bunch of types for the dispatched payloads, so pull the thing into a directory we can throw them in.
2020-05-13 21:07:50 -06:00
Michael Telatynski
0e8bd59d2f View Source should target the replacing event rather than the root one
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-11 15:43:34 +01:00
Michael Telatynski
faab35738f Add new default home page fallback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-07 10:48:56 +01:00
Travis Ralston
3f99332f4b Use componentDidMount in place of componentWillMount where possible
This fixes a common React warning we see. Most of these components should be using constructors instead, however componentDidMount is just as good (and doesn't require converting most of these).

Conversion to classes will be done in a later stage of React warning fixes.

For https://github.com/vector-im/riot-web/issues/12877
2020-03-31 14:14:17 -06:00
Michael Telatynski
d5177ddc04
Merge pull request #4133 from matrix-org/t3chguy/pinned
Fix message context menu breaking on invalid m.room.pinned_events event
2020-02-26 11:36:46 +00:00
Michael Telatynski
9a1236a016 Fix message context menu breaking on invalid m.room.pinned_events event
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-26 10:40:33 +00:00
Michael Telatynski
b2c1242207 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-23 22:19:18 +00:00
Michael Telatynski
d783ce86c8 Use noreferrer in addition to noopener for edge case browsers
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-23 22:14:29 +00:00
Michael Telatynski
600cb64d00 don't nest <a> inside <AccessibleButton>
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-18 15:04:57 +00:00
Michael Telatynski
42b63fbc81 Fix share message context menu option keyboard a11y
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-14 09:36:10 +00:00
J. Ryan Stinnett
9991a544aa Resolve default export warnings from Webpack
Webpack was printing several warnings about missing default exports,
particularly from components, where we auto-generate a default import via the
component index.

As part of this, the emoji picker recent handling (which is not a component) is
moved elsewhere to avoid the generated import.
2020-01-24 22:26:34 +00:00
Michael Telatynski
33b5d42c06 Be consistent about our settings svg, free the other one 2020-01-22 15:34:17 +00:00
Travis Ralston
135c84251c Fix more imports post-merge 2020-01-09 14:19:19 -07:00
Travis Ralston
fde32f13a5 [CONFLICT CHUNKS] Merge branch 'develop' into travis/sourcemaps-develop 2020-01-09 14:15:09 -07:00
Michael Telatynski
8116ac74ce
Update src/components/views/context_menus/MessageContextMenu.js
Co-Authored-By: Travis Ralston <travpc@gmail.com>
2020-01-09 12:10:44 +00:00
Travis Ralston
59f608ffd6
Merge pull request #3761 from matrix-org/travis/babel7-wp-es6-export
Convert CommonJS exports to ES6 exports
2020-01-08 09:09:11 -07:00
Michael Telatynski
9c500e3544 Merge branches 'develop' and 't3chguy/clean_up_TextualBody' of github.com:matrix-org/matrix-react-sdk into t3chguy/clean_up_TextualBody
 Conflicts:
	src/components/views/messages/TextualBody.js
2020-01-06 11:51:35 +00:00
Michael Telatynski
25d864c39d Fix wrong scope binding on openHelp for TopLeftMenu 2019-12-23 19:29:43 +00:00
Michael Telatynski
661701f7ca Merge branches 'develop' and 't3chguy/tags_changes' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/tags_changes
 Conflicts:
	src/components/views/elements/TagTile.js
2019-12-23 11:00:42 +00: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
Travis Ralston
344dac4fb9 Convert CommonJS exports to ES6-compatible exports
We use `export default` begrudgingly here. Ideally we'd use just `export`, though this entire SDK expects things to be exported as a default. Instead of breaking everything, we'll sacrifice our export pattern for a smaller diff - a later commit can always do the default export -> regular export conversion.
2019-12-22 21:01:02 -07:00
Michael Telatynski
d9ea9b4ad3 Iterate to match design on Zeplin 2019-12-19 20:53:34 +00:00
Michael Telatynski
b2249d0561 Initial rejig 2019-12-19 20:09:05 +00:00
Michael Telatynski
937b32663c Migrate away from Legacy React Contexts 2019-12-17 17:26:12 +00:00
Michael Telatynski
702a8ff4a9 Change ref handling in TextualBody to prevent it parsing generated nodes
Remove unused paths

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-08 01:01:19 +00:00
Michael Telatynski
757f811126 s/ContextualMenu/ContextMenu/
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-02 23:21:59 +00:00
Michael Telatynski
811454462d fix Stickerpicker and MessageContextMenu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 20:38:58 +00:00
Michael Telatynski
6c5b777a77 Consolidate all except tooltips
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 18:16:59 +00:00
Michael Telatynski
6d69ec17d9 Merge branches 'develop' and 't3chguy/context_menus' of github.com:matrix-org/matrix-react-sdk into t3chguy/context_menus
 Conflicts:
	src/components/views/context_menus/RoomTileContextMenu.js
2019-11-28 16:25:59 +00:00
Travis Ralston
86783e4439
Merge pull request #3645 from matrix-org/travis/widget-menu
Move many widget options to a context menu
2019-11-21 08:10:28 -07:00
Travis Ralston
fd12eb28e7 Move many widget options to a context menu
Part of https://github.com/vector-im/riot-web/issues/11262
2019-11-20 19:17:42 -07:00
Michael Telatynski
d4d51dc61f Rip out the remainder of Bluebird 2019-11-18 10:03:05 +00:00
Michael Telatynski
b73d0ca92a delint and run i18n 2019-11-12 12:37:47 +00:00
Michael Telatynski
f5d467b391 delint 2019-11-12 12:26:07 +00:00
Michael Telatynski
2b34cf4362 Replace Promise.delay with promise utils sleep
(cherry picked from commit 0a21957b2c)
2019-11-12 12:07:56 +00:00
Michael Telatynski
f9d6ed63f0 Revert "Replace Promise.delay with promise utils sleep"
This reverts commit 0a21957b
2019-11-12 11:56:32 +00:00
Michael Telatynski
168b1b68bb Revert "s/.done(/.then(/ since modern es6 track unhandled promise exceptions"
This reverts commit 09a8fec2
2019-11-12 11:56:21 +00:00
Michael Telatynski
09a8fec261 s/.done(/.then(/ since modern es6 track unhandled promise exceptions 2019-11-12 11:51:23 +00:00
Michael Telatynski
0a21957b2c Replace Promise.delay with promise utils sleep 2019-11-12 11:46:58 +00:00
Michael Telatynski
1c4d89f2d7 Migrate all standard Context Menus over to new custom framework 2019-11-11 17:53:17 +00:00
Michael Telatynski
5643743167 Don't intercept TAB on the app outside of the composer, fix tabIndex > 0
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-10 14:13:29 +01: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
c37e27f03d Improve a11y:
+ Close context menu on escape
+ Use AccessibleButtons for more things (Context Menus and TabbedView)

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-26 14:52:20 +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
9a15d4cfc1 Merge branches 'develop' and 't3chguy/report_event' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/report_event
 Conflicts:
	src/i18n/strings/en_EN.json
2019-09-12 12:45:16 +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
Michael Telatynski
4db8ef4d89 Correct case of propTypes property in ES6 React Components. React 16
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-06 14:27:33 +01:00
Michael Telatynski
22ee809922 Add way to report the content of a message
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-08 16:39:15 +01:00
Michael Telatynski
71338d5140 Hide settings button on Room Tile Context Menu for myMembership=invite
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-06 16:25:29 +01:00
Andrew Morgan
f80cbebb9d
Don't switch rooms when forgetting a room (#3275)
Don't randomly change to another room upon forgetting a room.
2019-08-05 10:34:46 +01:00
Bruno Windels
515ed2e1bb Also cancel associated events when canceling sending from ctx menu 2019-07-02 10:11:38 +02:00
Bruno Windels
4be16a380a only show resend options if event hasn't been redacted
(which can now be only local, which is why this wasn't neccesary before)
2019-07-01 17:39:30 +02:00
Bruno Windels
0d79b03f53 support resending reactions 2019-07-01 17:39:00 +02:00
Bruno Windels
8160759a52 show the various resend options as different menu items 2019-07-01 17:37:32 +02:00
Bruno Windels
d66d3ca4d2 support resending redaction in context menu 2019-07-01 11:06:55 +02:00
Bruno Windels
6d458154a9 support resending edit in context menu 2019-07-01 11:06:55 +02:00
Bruno Windels
62ad40d1d9
spelling
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-06-04 14:53:01 +00:00
Bruno Windels
629b776820 clarify why we dont need dialog on network error 2019-06-04 16:11:49 +02:00
Bruno Windels
a11deffe5e only show "can't redact" dialog when not a network error
as the redaction is queued now and might be sent later
2019-06-04 13:32:14 +02:00
Travis Ralston
aac87c4635 Move focusing to the context menu create call 2019-05-20 21:07:55 -06:00
Travis Ralston
2a187810fd Restructure TopLeftMenu for accessibility and autofocus it
We use a trick with refs to automatically focus the element, also making use of mx_HiddenFocusable to hide the unnecessary outline. 

The menu itself has been restructured to hide some elements from screen readers (reduce noise) and to have a single unordered list. Screen readers mention when the user "enters" a list, and each item was previously saying "enter list <action>" when it should have just been "<action>".

By focusing automatically, the keyboard can be used to go up/down the menu as may be expected by keyboard users.
2019-05-17 15:32:03 -06:00
J. Ryan Stinnett
44e9ca6c52 Extract isContentActionable to a separate helper
This moves the check about whether an event is actionable (for the purpose of
replies, edits, reactions, etc.) to shared utils module.
2019-05-02 12:05:17 +01:00
J. Ryan Stinnett
739c8c0314 Promote reply button up to message action bar
This moves the reply action out of the existing options menu and up to the
message action bar for easier access.
2019-04-29 15:53:03 +01:00
J. Ryan Stinnett
c38a7e6756 Pass correct args when creating event permalink in context menu
After the permalink API was changed in
https://github.com/matrix-org/matrix-react-sdk/pull/2671, it seems we forgot to
update this call site, so it was creating `<room>/<room>` links, instead of
`<room>/<event>`.

Fixes https://github.com/vector-im/riot-web/issues/9110
2019-03-11 15:05:05 +00:00
Travis Ralston
604f8f8b6b Misc fixes to StatusMessageContextMenu
"waiting" is not a property, and unmount had a typo
2019-03-07 14:57:30 -07:00