Commit graph

5430 commits

Author SHA1 Message Date
Bruno Windels
c0e9edcf40 get decrypted content if needed 2019-06-27 12:33:29 +02:00
Travis Ralston
cd089a3f95 Track the user's own typing state external to the composer
Fixes https://github.com/vector-im/riot-web/issues/9986

There's a few reasons for pushing this out to its own place:
* In future, we might want to move WhoIsTyping here.
* We have multiple composers now, and although they don't send typing notifications, they could (see https://github.com/vector-im/riot-web/issues/10188)
* In future we may have status for where/what the user is typing (https://github.com/matrix-org/matrix-doc/issues/437)
* The composer is complicated enough - it doesn't need to dedupe typing states too.

Note: This makes use of the principles introduced in https://github.com/vector-im/riot-web/issues/8923 and https://github.com/vector-im/riot-web/issues/9090
2019-06-26 22:36:55 -06:00
J. Ryan Stinnett
e8fba4f770 Change interactive tooltip to only flip when required
This changes the interactive tooltip to only flip around when the tooltip
content would be near the window edge.

Fixes https://github.com/vector-im/riot-web/issues/10176
2019-06-26 18:24:34 +01:00
Bruno Windels
f6e0cd9a03 don't show error dialog when user has no webcam
instead, retry with just audio.
Also when mounted, check if the user has given enough permissions
to return non-empty labels for the devices, something both ff & chrome
do if you haven't going through the permissions popup yet. If not,
show the permissions button.
2019-06-26 18:54:15 +02:00
Bruno Windels
15d286ed93
Merge pull request #3144 from matrix-org/bwindels/edit-history
Edit history dialog
2019-06-26 14:38:53 +00: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
a1548285b5 fix copyright header and whitespace 2019-06-26 16:13:15 +02:00
Bruno Windels
c987f4e8d8 remove passthrough ctor 2019-06-26 16:12:57 +02:00
Bruno Windels
d606c966ea use PureComponent 2019-06-26 16:12:44 +02:00
Bruno Windels
929020a139 remove leftover logging 2019-06-26 15:51:55 +02:00
Bruno Windels
39c96b15d8 set state in ctor 2019-06-26 15:51:46 +02:00
Bruno Windels
f4b86ca265 don't bind 2019-06-26 15:51:28 +02:00
Bruno Windels
fa0319f14b apply renamed (token -> from) option 2019-06-26 15:49:24 +02:00
Travis Ralston
8d85967824
Merge pull request #3139 from matrix-org/travis/upgrades-final
Fix room upgrade warning being chopped off and a spelling mistake
2019-06-26 07:12:39 -06:00
Bruno Windels
fe3be39fe7 don't hide timestamps 2019-06-26 11:59:56 +02:00
Bruno Windels
ee03a0f31d recycle EventTile css to make history items look mostly similar 2019-06-26 11:59:56 +02:00
Bruno Windels
8c9a6ddf96 support edits pagination in a ScrollPanel 2019-06-26 11:59:56 +02:00
Bruno Windels
0fe28cba43 support emotes in edit history 2019-06-26 11:59:56 +02:00
Bruno Windels
e7fc84d5da render history items in own component
including:
- respect 12/24 hour setting
- pillify
2019-06-26 11:59:56 +02:00
Bruno Windels
19b4699bc2 WIP for showing pills in edit history 2019-06-26 11:59:56 +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
Bruno Windels
ef71e6fd4f very basic & hackish edit history dialog 2019-06-26 11:59:56 +02:00
Travis Ralston
ca6ddf324f Show a loading state for slow peeks 2019-06-25 20:56:33 -06:00
Travis Ralston
0701d89bbe Fix upgrade warning being chopped off
The flex box was behaving a bit strange, so we just wrap the content and change `height: 235px` to `max-height: 235px` to get scrollbars.
2019-06-25 15:40:22 -06:00
Travis Ralston
b6242dbad2 Fix spelling 2019-06-25 13:54:48 -06: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
J. Ryan Stinnett
c9dc4cbea3
Merge pull request #3137 from matrix-org/jryans/tooltip-interaction
Improve API and interactivity of new tooltip
2019-06-25 12:26:25 +01:00
J. Ryan Stinnett
67130cb45f Condense isInRect 2019-06-25 11:57:55 +01:00
Bruno Windels
a9b5d2095c
Merge pull request #3132 from matrix-org/bwindels/edit-full-feature-flag
feature flag for displaying edits as well
2019-06-24 21:00:58 +00:00
J. Ryan Stinnett
72bfc3b5ea Improve API and interactivity of new tooltip
This reworks the API the `InteractiveTooltip` component so that it's more
natural to use just like other React components. You can now supply the target
component as a child and the tooltip content as a prop.

In addition, this tweaks the interactivity to keep the tooltip on screen until
you move the mouse away from the tooltip and its target.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-24 17:32:36 +01:00
J. Ryan Stinnett
f366f7d2b3
Merge pull request #3131 from matrix-org/jryans/interactive-tooltip
Add interactive tooltip style
2019-06-24 15:42:02 +01:00
Michael Telatynski
f3641eaa32 Add ability to render null-rejoins in Timeline and MELS
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-23 21:41:28 +01:00
Bruno Windels
5fa3f70fb4 feature flag for displaying edits as well 2019-06-21 18:32:15 +02:00
Bruno Windels
1c7af38d83
Merge pull request #3126 from matrix-org/bwindels/caret-refactoring
Editor caret improvements
2019-06-21 15:02:41 +00:00
J. Ryan Stinnett
32bf4588dd Center tooltip along top or bottom of target
This adjusts the positioning to work more the way we want:

* Tooltip is position on the top or bottom edge of the target depending on where
  space is available
* Tooltip and chevron are centered

In addition, more bits borrowed from `ContextualMenu` are not needed, so they
have been removed for simplicity.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:04:19 +01:00
J. Ryan Stinnett
6dcdad028e Clone ContextualMenu to InteractiveTooltip
As part of reactions and editing work, we're adding a new style of tooltip that
allows interacting with the content of the tooltip.  `ContextualMenu` is closest
out of the things we have today, but it doesn't position in quite the way we
want and it's already quite complex.

To get started, let's first clone that to a new `InteractiveTooltip`.

Part of https://github.com/vector-im/riot-web/issues/9753
Part of https://github.com/vector-im/riot-web/issues/9716
2019-06-21 15:04:19 +01:00
Bruno Windels
cf0799289d Disable left/right arrow navigating completions for now
as the autocomplete is now very eager to appear, this breaks
caret navigation when typing e.g. anything with a colon.

Ideally, we should make the AC less eager to appear,
but this is a quick fix for now.
2019-06-21 13:48:52 +02:00
Michael Telatynski
dea412c906 Add file size to UploadConfirmDialog
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-21 09:03:28 +01:00
Travis Ralston
2a0660c545
Merge pull request #3123 from matrix-org/travis/sas-timeouts
Consider cancelled verifications when mounting IncomingSasDialog
2019-06-20 14:29:20 -06:00
Travis Ralston
0f8dd102bf Move early-cancel stuff to constructor 2019-06-20 14:17:06 -06:00
Travis Ralston
bf443149b5 Make the verification cancelled dialog say OK instead of Cancel
Fixes https://github.com/vector-im/riot-web/issues/9306

Includes unexpected cleanup of i18n
2019-06-19 15:07:45 -06:00
Travis Ralston
ff3c52a736 Consider cancelled verifications when mounting IncomingSasDialog
The cancellation can be because of a background problem, or because the user received another verification request from the same user. The cancel function does get called, however due to the speed of our dialog handling the state ends up being lost forever. Instead of trying to de-layer dialogs, this just fastforwards the whole dialog to "cancelled" on mount if required.

Fixes https://github.com/vector-im/riot-web/issues/10118
2019-06-19 14:59:59 -06:00
J. Ryan Stinnett
78b0f61efe
Merge pull request #3119 from matrix-org/jryans/rename-tooltip-button
Fix casing of TooltipButton
2019-06-19 19:18:15 +01:00
Bruno Windels
b16bc0178a insert manually, as insertHTML command moves caret inconsistently
across browsers
2019-06-19 17:42:18 +02:00
David Baker
0e6f401b62 copyright 2019-06-19 11:48:47 +01:00
David Baker
c57d93702a De-duplicate notif badge code
We had two different places we were deciding whether to show a badge.
Let's just have one.
2019-06-19 11:46:24 +01:00
J. Ryan Stinnett
bb4b5d7798 TooltipButton rename step 2 of 2 2019-06-19 11:32:03 +01:00
J. Ryan Stinnett
ab4c5f0152 TooltipButton rename step 1 of 2 2019-06-19 11:30:37 +01: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
J. Ryan Stinnett
9591e6b0d3
Merge pull request #3071 from matrix-org/t3chguy/authentication_password_field
Switch ugly password boxes to Field or styled input
2019-06-19 09:31:11 +01:00
Bruno Windels
bb97653455
Merge pull request #3113 from matrix-org/bwindels/mediadeviceslabels
Provide default name if device label is missing
2019-06-18 16:44:43 +00:00
Bruno Windels
63fba611c0
Merge pull request #3108 from matrix-org/bwindels/edit-room-notif-pill
Support @room pills while editing
2019-06-18 16:43:14 +00:00
Travis Ralston
7b514b0573
Merge pull request #3115 from matrix-org/travis/reduce-scalar-calls
Defer scalar API calls until they are needed
2019-06-18 08:17:21 -06:00
Travis Ralston
b6ca0ea6bf Appease the linter 2019-06-18 08:01:38 -06:00
Travis Ralston
be37332bb0 Further simplify usage of integrations 2019-06-18 07:55:43 -06:00
Bruno Windels
f95f194b6a keep old arrow-up behaviour when editing is not enabled
also, move caret at end/start checks before choosing what to do
also, selectHistory shouldn't return a promise
2019-06-18 11:49:36 +02:00
Bruno Windels
32840fc274
Merge pull request #3098 from matrix-org/t3chguy/restore_composer_history
Restore Composer History under shift-up & down
2019-06-18 08:59:11 +00:00
David Baker
5e7b4564cf
Merge pull request #3114 from matrix-org/dbkr/allow_server_change_if_dead
Allow changing server if validation has failed
2019-06-18 09:37:31 +01:00
Travis Ralston
b0d340f578
Merge pull request #3109 from matrix-org/t3chguy/upload_all_button
Add Upload All button to UploadConfirmDialog
2019-06-17 18:06:15 -06:00
Travis Ralston
8f6e8c1ec7 Appease the linter 2019-06-17 15:51:14 -06:00
Travis Ralston
974a11ed20 Defer scalar auth in AppsDrawer to widgets/manager dialog 2019-06-17 15:39:32 -06:00
Travis Ralston
d2d0cb2e9e Port AppTile (widgets) over to new integration manager dialog props 2019-06-17 15:34:30 -06:00
Travis Ralston
f699fed720 Defer sticker picker scalar auth to integration manager dialog
or when needed, instead of up front.
2019-06-17 15:30:24 -06:00
Travis Ralston
a5f296457f Make the Manage Integrations Button defer scalar auth to the manager
This moves the responsibility of creating a URL to open from the button (and other components) to the integrations manager dialog itself.

By doing this, we also cut down on scalar API calls because we don't pick up on account information until the user opens the dialog.
2019-06-17 15:29:28 -06:00
Travis Ralston
7c80355ea7 Convert IntegrationsManager to a class 2019-06-17 15:26:58 -06:00
David Baker
10f6abfe17 Allow changing server if validation has failed
Show the server config section if there's an error and fix an if
case where we forgot to un-set the busy flag
2019-06-17 18:47:20 +01:00
Bruno Windels
a35c9ea585 provide default for missing device labels 2019-06-17 19:39:40 +02:00
Luca Weiss
c68074f532
Fix display of canonicalAlias in group room info
Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
2019-06-16 21:52:25 +02:00
Michael Telatynski
2fc2e32e60 Add Upload All button to UploadConfirmDialog
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-16 11:43:13 +01:00
Michael Telatynski
fbe8d1c89b Switch DeactivateAccountDialog to Field and cleanups
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-16 10:42:46 +01:00
Michael Telatynski
3563b83762 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/authentication_password_field 2019-06-16 10:31:30 +01:00
Michael Telatynski
03c37821f6 clean up onVerticalArrow
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-15 15:10:34 +01:00
Bruno Windels
497ba1ecd4 prevent @room pills being applied multiple times when rerendering 2019-06-14 18:28:44 +02:00
Bruno Windels
eb4ff50c3c do parts creation only in PartCreator to not scatter dependencies 2019-06-14 18:28:44 +02:00
Michael Telatynski
6a10f0068d Use Alt-UP/DOWN for Composer History instead of random room change
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-14 12:26:52 +01:00
Michael Telatynski
876acc0f76 Merge branches 'develop' and 't3chguy/restore_composer_history' of github.com:matrix-org/matrix-react-sdk into t3chguy/restore_composer_history
# Conflicts:
#	src/components/views/rooms/MessageComposerInput.js
2019-06-14 12:26:05 +01:00
Bruno Windels
3cfdd518ee detect emote when sending (and trim "/me " for content) 2019-06-14 11:02:20 +02:00
Michael Telatynski
41b995df3c If oldContent matches newContent, skip sending the edit
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-13 22:56:32 +01:00
David Baker
06a11f4d45 Random blank lines 2019-06-13 18:31:04 +01:00
David Baker
e884cccabe Allow changing servers on nonfatal errors
Fixes https://github.com/vector-im/riot-web/issues/10016
2019-06-13 18:23:33 +01:00
Bruno Windels
48f5cf1523
Merge pull request #2966 from npny/npny/autocomplete-arrow-keys
Allow arrow keys navigation in autocomplete list
2019-06-13 15:38:36 +00: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
Michael Telatynski
acb813372c Restore Composer History under shift-up & down
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-12 21:32:47 +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
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
a47a46bd9f
Merge pull request #3084 from matrix-org/jryans/update-action-bar-on-decrypt
Recheck message actions on decrypt
2019-06-10 16:53:35 +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
David Baker
f620b712fb
Merge pull request #3083 from matrix-org/dbkr/remember_invited_room
Remember we were trying to accept an invite
2019-06-10 13:31:12 +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
David Baker
80812db466 Remember we were trying to accept an invite
When the user was on an invite page and clicked the sign up/sign in
buttons, remember that invite so we can show it again after they're
done signing up/in.

https://github.com/vector-im/riot-web/issues/9816
2019-06-10 10:24:06 +01:00
J. Ryan Stinnett
a1d0b8c5f3
Merge pull request #3080 from matrix-org/jryans/lowercase-letters
Clarify that only lowercase letters are allowed
2019-06-07 20:40:55 +01:00
Travis Ralston
795a273e26
Merge pull request #3067 from matrix-org/travis/fail-fast-but-not-too-fast
Fail more softly on homeserver liveliness errors
2019-06-07 07:43:45 -06:00
J. Ryan Stinnett
b2a9402d3f Clarify that only lowercase letters are allowed
We only allow lowercase letters in localparts.

Fixes https://github.com/vector-im/riot-web/issues/9983
2019-06-07 13:57:30 +01:00
Travis Ralston
6daf5a1d9b
Merge pull request #3076 from matrix-org/t3chguy/fix_community_add_room
Fix AddressPickerDialog adding wrong entry to selected list case
2019-06-06 17:25:26 -06:00
Michael Telatynski
b2c39ba842 Fix AddressPickerDialog adding wrong entry to selected list case
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-07 00:00:38 +01:00
David Baker
b365c9dfe6
Merge pull request #3074 from matrix-org/dbkr/fix_email_invite_address_match_check
Fix email invites address-match checking
2019-06-06 15:06:36 +01:00
David Baker
9816fe0ed7 Fix email invites address-match checking
Riot was always saying the email address that the invite was sent
to was not associated with your account.

Two fixes here:
 1. We mounted RoomPreviewBar with no invitedEmail prop and then
    changed the prop later, but RoomPreviewBar only checked for it
    on mount. Make sure we re-check when the props change.
 2. Pass oobData through RoomPreviewBar because we need to pass it
    to the RoomAvatar for 3pid invites.

https://github.com/vector-im/riot-web/issues/9816
2019-06-06 14:34:57 +01:00
J. Ryan Stinnett
aec3950a71
Merge pull request #3073 from matrix-org/jryans/twemoji-license
Add license info for Twemoji
2019-06-06 14:27:50 +01:00
J. Ryan Stinnett
20b57b855b Add license info for Twemoji
Fixes https://github.com/vector-im/riot-web/issues/9930
2019-06-06 14:20:13 +01:00
Michael Telatynski
db495e7162
Merge pull request #3070 from matrix-org/t3chguy/fuzzier-emojis
Be somewhat fuzzier when matching emojis to complete on space
2019-06-06 12:39:00 +01:00
Michael Telatynski
bd0e676b46 Switch ugly password boxes to Field or styled input
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-06 09:16:28 +01:00
Michael Telatynski
25a994e575 pull toLowerCase(...).replace(...) out of the loop
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-06 08:45:32 +01:00
Michael Telatynski
878f0a4753 Be somewhat fuzzier when matching emojis to complete on space
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-06 08:39:24 +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
Travis Ralston
85858c731c
Merge pull request #3065 from matrix-org/travis/fix-logout
Don't refresh custom status on logout
2019-06-05 07:25:08 -06:00
Pierre Boyer
8158567640 Remove left/right autocomplete navigation for MessageEditor 2019-06-05 10:49:49 +02:00
Bruno Windels
940b2a7ef2
Merge pull request #3058 from matrix-org/bwindels/redactions-local-echo
Don't show "can't redact" dialog on network error, with redaction having local echo & queuing now.
2019-06-05 07:49:51 +00:00
Travis Ralston
e2fdeec71a Fail more softly on homeserver liveliness errors
This performs liveliness checks on the auth pages to try and show a friendlier error. Earlier checks in the app startup are expected to not block the app from loading on such failures.

See https://github.com/vector-im/riot-web/issues/9828
2019-06-04 23:42:38 -06:00
Travis Ralston
6b2dbdf7ba Don't refresh custom status on logout
The RoomTile gets remounted during logout due to the room stores being obliterated, however this causes the render() function to check if it should be showing custom status. If you have custom status enabled, and the person has a status set, the function errors due to no MatrixClient being available.

Fixes https://github.com/vector-im/riot-web/issues/9940
2019-06-04 15:34:11 -06: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
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
Pierre Boyer
a4dec88c65 Add back on..Arrow functions. Add left/right key navigation in MessageEditor 2019-06-04 13:57:15 +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
Pierre Boyer
97d4d1b73a Update composer to correctly call countCompletions and moveSelection 2019-06-04 13:07:19 +02:00
Pierre Boyer
bb133c1ebc Merge onUpArrow and onDownArrow into more general moveSelection 2019-06-04 13:06:47 +02:00
Pierre Boyer
6e4c3bfe56 Remove now unused code 2019-06-04 12:18:29 +02:00
Pierre Boyer
6cb59f7071 Allow left/right arrow keys to navigate through the autocompletion list 2019-06-04 11:58:16 +02:00
Will Hunt
d752389cfd
Renove SettingsStore 2019-06-03 23:31:28 +01:00
Travis Ralston
635b1ff612
Merge pull request #2928 from Half-Shot/hs/custom-notif-sounds
Custom notification sounds for rooms
2019-06-03 14:31:38 -06:00
Will Hunt
721607b696
Remove whitespace 2019-06-03 21:19:58 +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
Will Hunt
300095f50f Remove labs flag for custom notif sounds 2019-06-03 17:35:15 +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
Travis Ralston
ad84144543
Merge pull request #3053 from matrix-org/travis/bc-labs
Convert breadcrumbs from labs to real setting
2019-06-03 07:10:51 -06:00
Travis Ralston
a71b4f5b4c Appease the linter 2019-06-03 00:17:08 -06:00
Travis Ralston
7f0282a2e8 Convert breadcrumbs from labs to real setting
Fixes https://github.com/vector-im/riot-web/issues/9391
2019-06-03 00:15:33 -06:00
Travis Ralston
dd42e87c3c Add local echo on badges in breadcrumbs
Fixes https://github.com/vector-im/riot-web/issues/9890
2019-06-03 00:07:32 -06:00
Travis Ralston
ecc0552e89 ToUpper the country code 2019-06-01 09:12:09 -06:00
Travis Ralston
c12ef8829c Remove debugging 2019-05-31 21:26:22 -06:00
Travis Ralston
3f646f13dd Add option to change the default country code
Fixes https://github.com/vector-im/riot-web/issues/9926
2019-05-31 21:25:13 -06:00
Travis Ralston
16a46be00f Cache shouldLoadBackupStatus in state 2019-05-31 09:20:13 -06:00
Travis Ralston
1c84abae44 Fix logout dialog for low bandwidth 2019-05-31 09:14:49 -06:00
Bruno Windels
716719187d only capture enter if something was selected in completions 2019-05-31 15:05:09 +02:00
Will Hunt
9369e964fa Merge remote-tracking branch 'upstream/develop' into hs/custom-notif-sounds 2019-05-31 10:44:30 +01:00
Travis Ralston
a935e26ee3 Add flag to config to always show labs settings 2019-05-30 19:57:37 -06:00
Travis Ralston
0d47222132 Add LB setting to new user settings
Put under labs out of concern for https://github.com/vector-im/riot-meta/issues/66
2019-05-30 19:57:17 -06:00
Travis Ralston
d81804e0fe Merge branch 'develop' into matthew/low_bandwidth 2019-05-30 19:42:09 -06:00
J. Ryan Stinnett
1e3e9f4f87 Remove username on HS input label
Removes redundant HS name on the username input that duplicates the header above
it.

Fixes https://github.com/vector-im/riot-web/issues/9884
2019-05-29 17:48:16 +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
Bruno Windels
e1d1c8f99c
Merge pull request #2968 from npny/npny/autocomplete-prevent-send-on-enter
Hide autocomplete on Enter key press instead of sending message
2019-05-28 09:17:28 +00:00
Bruno Windels
afd656ae2c
Merge pull request #3025 from matrix-org/bwindels/edit-keyboard-nav
Message editing: arrow key (up/down) navigation between editable events
2019-05-27 15:12:40 +00:00
Bruno Windels
25e2c747ed focus main composer after cancel or saving edit 2019-05-27 16:26:21 +02:00
Bruno Windels
e193522db1 PR feedback: put findPrev/NextEditableEvent in one function with flag 2019-05-27 16:22:55 +02: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
Bruno Windels
fbb79e4686 don't navigate to next/prev message when editor has modifications
to prevent losing modifications by accident
2019-05-24 14:46:34 +02:00
Bruno Windels
bd3dbd1a89 remove edit history from main composer 2019-05-24 14:42:57 +02:00
Bruno Windels
3591eedcfa move between editable events with arrow keys 2019-05-24 14:42:33 +02:00
Bruno Windels
3468cef654
Merge pull request #3013 from matrix-org/bwindels/editor-formatting
Message editing: preserve and re-apply formatting
2019-05-24 07:34:05 +00:00
Travis Ralston
ea1c778bb1 Fix copyright 2019-05-22 23:35:05 -06:00
Travis Ralston
14dc4b47fa Merge branch 'develop' into travis/feature/wellknown2 2019-05-22 23:05:54 -06:00
Travis Ralston
9a1a9825b0
Merge pull request #3019 from matrix-org/travis/sr/fix-timeline
Make the timeline less noisy for screen readers (mk II)
2019-05-22 19:18:40 -06:00
Travis Ralston
a7d2309286 Convert ternary to multiple if statements for clarity 2019-05-22 16:36:14 -06:00
Travis Ralston
62dc83310a
Merge pull request #3020 from matrix-org/travis/sr/edit
Label message edit field as such for screen readers
2019-05-22 16:30:45 -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
2537a58162
Merge pull request #3014 from matrix-org/anoa/key_backup_checkmark
Move checkmark to the front of key backup message
2019-05-22 16:14:09 -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
85a024175b Hide flair from screen readers
To have less noise when they run over the sender profile.

See https://github.com/vector-im/riot-web/issues/9747
2019-05-22 15:18:46 -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
Andrew Morgan
d0deffac3d Move checkmark to the front of key backup message 2019-05-22 15:19:42 +01:00
Bruno Windels
53b6586986 re-apply markdown when saving a message 2019-05-22 16:19:07 +02: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
David Baker
03d092c574
Merge pull request #3010 from matrix-org/dbkr/uiauth_send_email
js-sdk interactive auth now sends email token
2019-05-22 14:24:14 +01:00
David Baker
90eb3ce9ec js-sdk interactive auth now sends email token
We previously sent it in componentWillMount of the email token
auth component which definitely gets us on react's naughtly list.
We now pass the js-sdk a callback it can call at the appropriate
time to send the token (https://github.com/matrix-org/matrix-js-sdk/pull/926).

We should make password reset and adding email addresses work the
same way, but currently they don't even use the interactive-auth
helpers(!) so they're unaffected.

https://github.com/vector-im/riot-web/issues/9586
2019-05-22 11:51:26 +01:00
J. Ryan Stinnett
4b4d09266e
Merge pull request #3005 from matrix-org/jryans/notif-error
Only show reactions in main message timeline
2019-05-22 09:15:04 +01:00
Travis Ralston
a551ef1a72 Label message edit field as such for screen readers
See https://github.com/vector-im/riot-web/issues/9747
2019-05-21 20:00:15 -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
Travis Ralston
5ae23fdb27 Hide flair from screen readers
To have less noise when they run over the sender profile.

See https://github.com/vector-im/riot-web/issues/9747
2019-05-21 18:55:01 -06:00
Travis Ralston
c2c55e06e6 Add voice labels for quick add room buttons
See https://github.com/vector-im/riot-web/issues/9747
2019-05-21 12:16:34 -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
Travis Ralston
907c7ed119
Merge pull request #2994 from matrix-org/travis/screenreader/topleftmenu
Update TopLeftMenu for accessibility: Keyboard shortcut, reduced screen reader noise
2019-05-21 09:52:26 -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
Matthew Hodgson
30a485bddd
Merge pull request #2995 from matrix-org/matthew/twemoji
Replace emojione with twemoji + emojibase
2019-05-21 11:32:53 +01: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
Travis Ralston
aac87c4635 Move focusing to the context menu create call 2019-05-20 21:07:55 -06:00
Travis Ralston
3476be3327 Merge branch 'develop' into travis/feature/wellknown2 2019-05-20 19:50:02 -06:00
Michael Telatynski
e2476acd0a Close copy tooltip in edge cases correctly
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-20 21:44:05 +01: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
J. Ryan Stinnett
0e5f0f24cc Extract MELS-style comma separated list to shared utility
This allows other UI components to use the same formatting for a long list.
2019-05-20 15:21:18 +01:00
Bruno Windels
230e53fe2f move most of room avatar handling to Avatar, to reuse in editor pills 2019-05-20 15:33:26 +02:00
Bruno Windels
5edfd01cb2 remove unused _getInitialLetter 2019-05-20 14:49:59 +02:00
Bruno Windels
e58d844e5b move getInitialLetter to Avatar so we can reuse it for editor pills 2019-05-20 14:20:36 +02: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
710338c01f pass member and room to editor pills to get avatar url 2019-05-20 10:28:26 +02: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
64e2de5b47 make autocomplete work again 2019-05-19 20:56:07 +01:00
Matthew Hodgson
dbc6815abf make EmojiProvider and stripped-emoji.json work 2019-05-19 20:48:18 +01:00
Matthew Hodgson
c63419f8a2 typos 2019-05-19 16:31:25 +01:00
Matthew Hodgson
a8297a7698 fix build 2019-05-19 16:11:12 +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
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
Travis Ralston
c5757d8303 Support CTRL+I for opening TopLeftMenu 2019-05-17 15:29:16 -06:00
Travis Ralston
f1aa2875e1 Hide avatars from screen readers by default
To avoid having them read out the user's ID
2019-05-17 15:25:59 -06:00
J. Ryan Stinnett
5144907983 Fix indent 2019-05-17 17:44:11 +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
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
578a183f49 hide the action bar while editing 2019-05-17 15:35:28 +01:00
Bruno Windels
62b8973e72 cancel the edit when pressing escape 2019-05-17 15:35:14 +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
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
c48ecb66d9
Merge pull request #2990 from matrix-org/bwindels/editedmarker
Message editing: show (edited) marker on edited messages, with tooltip
2019-05-17 11:04:09 +00:00
Bruno Windels
4a6725d4c2 Message editing: show (edited) marker on edited messages, with tooltip 2019-05-17 11:36:36 +01:00
Bruno Windels
ca2e6d8eb2 Message editing: shift+enter for newline, enter to send 2019-05-17 10:22:02 +01:00
Travis Ralston
82bd893f03 Mute screen readers over reactions 2019-05-16 16:36:23 -06:00
Michael Telatynski
d7c6869188 Apply Flex voodoo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-05-16 21:55:17 +01:00
Travis Ralston
0c7aa39273 Merge branch 'develop' into travis/feature/wellknown2 2019-05-16 12:59:50 -06:00
Travis Ralston
8c326bff9e
Merge pull request #2964 from matrix-org/travis/wk/simplify-phases
Refactor "Next" button into ServerConfig components
2019-05-16 12:46:35 -06:00
Bruno Windels
245f48a22c set caret on mount as we usually do, so FF doesn't enter 2 newlines 🤯 2019-05-16 18:39:20 +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
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
Travis Ralston
6f22acc3c6
Merge pull request #2979 from aaronraimist/imageview-tooltip
Add tooltips to rotate and close buttons in ImageView (#9686)
2019-05-15 21:14:20 -06:00
Aaron Raimist
c38b5cabb1
Allow the strings to be translated
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-05-15 22:11:51 -05:00
Aaron Raimist
bfd37d8089
Add tooltips to rotate and close buttons in ImageView (#9686)
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-05-15 22:06:02 -05:00
Travis Ralston
60a13652df
Merge pull request #2965 from matrix-org/travis/wk/tooltip
Render underlines and tooltips on custom server names in auth pages
2019-05-15 14:13:44 -06:00
Travis Ralston
6e3b06f364 Human de-linting 2019-05-15 13:56:15 -06:00
Bruno Windels
085f2d199d focus editor after clicking edit 2019-05-15 17:17:35 +01:00
Will Hunt
2994d99378
Merge branch 'develop' into hs/custom-notif-sounds 2019-05-15 16:09:55 +01:00
Bruno Windels
d73f547f55 reapply pills, link preview, code highlighting, ... after edit 2019-05-15 15:55:03 +01:00
Bruno Windels
6366371c0d add * to fallback messages for edits 2019-05-15 15:54:05 +01:00
Bruno Windels
b081a3156f dont show edit button for messages that are not your own 2019-05-15 15:53:49 +01:00