Commit graph

7633 commits

Author SHA1 Message Date
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
b16a3c53cd
Merge pull request #3122 from matrix-org/jryans/slim-contextualmenu
Remove unused ContextualMenu features
2019-06-19 19:18:37 +01: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
J. Ryan Stinnett
dc9282c539 Remove unused ContextualMenu features 2019-06-19 14:47:15 +01:00
David Baker
86081c3c8f
Merge pull request #3120 from matrix-org/dbkr/badges_remove_dupe_code
De-duplicate notif badge code
2019-06-19 13:30:04 +01:00
David Baker
6eddce8c32 lint 2019-06-19 12:13:17 +01:00
David Baker
edd43a2706 Fix favicon/title badge count
This was using a separate function (in MatrixChat) that didn't
take into account whether we were supposed to be hiding the badge
for rooms so would include notifs that were hidden everywhere else.

Also make it a function & put it in RoomNotifs with all its friends.

Fixes https://github.com/vector-im/riot-web/issues/3060
2019-06-19 12:06:32 +01: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
David Baker
9641110315
Merge pull request #3118 from matrix-org/dbkr/already_registered
Restore warning for if you're already logged in
2019-06-19 09:27:31 +01:00
David Baker
c8e121dc70 Restore warning for if you're already logged in
...when clicking an email link. Although now we can complete the
registration because we can do so without replacing your session.
2019-06-18 18:43:14 +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
f7c03acb58
Merge pull request #3117 from matrix-org/bwindels/redactions-blended-echo
Blend pending redactions
2019-06-18 13:09:25 +00:00
Bruno Windels
c4fc2a8089 remove redundant localecho part from method name 2019-06-18 14:57:58 +02:00
Bruno Windels
02c9e29937 use renamed method that also takes local redactions into account now 2019-06-18 13:47:33 +02: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
David Baker
e3bf4a0b8e Re-enable register button on change to working HS
Register button disabling is done via serverErrorIsFatal so we need
to reset this on a successful validation.

https://github.com/vector-im/riot-web/issues/10029
2019-06-17 16:27:35 +01:00
David Baker
2eef3d610e
Merge pull request #3107 from matrix-org/dbkr/multispinner
Fix double-spinner
2019-06-17 09:27:45 +01: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
David Baker
4c036c98ee Fix double-spinner
On registering, we showed a spinner, and then another spinner on
top of the spinner, which led to an interesting spinner-in-box
effect.

Suppress the second type of spinner when we know we already have one.
2019-06-14 17:21:07 +01:00
David Baker
4ce72fdffa
Merge pull request #3106 from matrix-org/dbkr/resurrect_riot_bot
Fix welcome user
2019-06-14 17:20:31 +01:00
David Baker
794b04b89a take the debugging out 2019-06-14 16:41:30 +01:00
David Baker
30726d6cf9 Pull out welcome user chat code to a separate function
also expand on comment
2019-06-14 16:29:26 +01:00
David Baker
929e9dc653 Don't forget to show the homepage if no welcome user 2019-06-14 16:04:09 +01:00
David Baker
8fa50b26a6 Fix welcome user
https://github.com/matrix-org/matrix-react-sdk/pull/3101 meant we
don't get logged straight in after registering if using an email
address, but this was the point at which we made a chat with the
welcome user. Instead, set a flag in memory that we should try &
make a chat with the welcome user for that user ID if we get a
session for them.

Of course, if the user logs in on both tabs, this would mean each
would make a chat with the welcome user (although actually this
was a problem with the old code too). Check our m.direct to see if
we've started a chat with the welcome user before making one (which
also means we have to make sure the cached sync is up to date...
see comments).
2019-06-14 15:31:19 +01: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
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
David Baker
446b20c454
Merge pull request #3101 from matrix-org/dbkr/simplify_email_reg
Simplify email registration
2019-06-13 18:22:30 +01:00
David Baker
81327264f7 Remove unused inhibitlogin param
and fix docs.
2019-06-13 17:44:00 +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
David Baker
048d8d2ec7 Simplify email registration
You now don't get automatically logged in after finishing
registration. This makes a whole class of failures involving race
conditions and multiple devices impossible.

https://github.com/vector-im/riot-web/issues/9586
2019-06-13 16:24:09 +01: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
David Baker
1139f68de8 Pass in object of the right type 2019-06-12 18:11:58 +01:00
Bruno Windels
41e41269dc use EditorStateTransfer to pass on state to newly mounted editor 2019-06-12 18:52:34 +02:00
David Baker
10377b42e9 Fix registration with email + non-default HS
We were ignoring the hs/is from the query parameters so after
clicking the link, the new client tried to use the wrong server.

Broken by https://github.com/matrix-org/matrix-react-sdk/pull/2941
Fixes https://github.com/vector-im/riot-web/issues/9659
2019-06-12 17:42:09 +01: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
b8ed731c89 Allow registration to submit for non-fatal errors
This allows you to proceed with registration even if the IS is down, for
example.

Fixes https://github.com/vector-im/riot-web/issues/10018
2019-06-11 18:01:27 +01:00
J. Ryan Stinnett
21099052fc Clear the login busy state after .well-known discovery
This always clear the login busy state after .well-known discovery without
waiting for the resulting server config. This is important for the case where
the HS that a full MXID resolves to matches the default HS, as without it we'd
be stuck in a busy state forever.

Fixes https://github.com/vector-im/riot-web/issues/10014
2019-06-11 15:41:47 +01:00
David Baker
a6c5ac669b Don't show spinner once liveness check has failed
We're not doing anything at that point so it's a lie
2019-06-11 12:10:44 +01:00
David Baker
5eccd14120 Fix registration after fail-fast
The lineness checks meant that we could no longer assume we always
had a matrix client, so don't assume we do.

Fixes https://github.com/vector-im/riot-web/issues/10011
2019-06-11 12:02:14 +01:00
David Baker
e1a1492f6f
Merge pull request #3085 from matrix-org/dbkr/one_request_at_a_time_two
Use setBusy interface of js-sdk interactive auth
2019-06-11 10:42:27 +01:00
David Baker
7b3d1ad08d
Typo 2019-06-11 10:29:00 +01:00
Travis Ralston
bd3237500f Fix submit disabled condition 2019-06-10 20:24:06 -06:00
Travis Ralston
aacb942d57 Don't handle identity server failure as fatal, and use the right message
Fixes https://github.com/vector-im/riot-web/issues/10002
2019-06-10 19:28:32 -06: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
David Baker
db867d1a58 s/setBusy/busyChanged/ 2019-06-10 16:27:27 +01:00
David Baker
cb4af9d043 Fix test fail 2019-06-10 16:18:58 +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
3126880345 Extend context menu alignment without chevrons
For context menus without chevrons, this changes the menu components to still
set default styles that align the menu based on the edges used to specify the
menu's position. This is not intended to change the positioning of any existing
menus.
2019-06-10 16:07:28 +01:00
David Baker
4597dcd221 Fix exception on logout
Don't try to unregister if we never registered
2019-06-10 15:27:59 +01:00
David Baker
a8a4ca2ed1 Use setBusy interface of js-sdk interactive auth
This helps to make sure we only do one auth request at a time.

https://github.com/matrix-org/matrix-js-sdk/pull/951
2019-06-10 15:22:53 +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
2c10557f26 Don't NPE if no third party invite 2019-06-10 12:32:53 +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
Travis Ralston
59ba5fe62a Don't block submit if the server is dead
But still check so we can clear any errors, maybe
2019-06-07 07:36:46 -06:00
Travis Ralston
120123bcb1 Allow submit on forgot password page 2019-06-07 07:27:15 -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
3f6b266256
Merge pull request #3077 from matrix-org/t3chguy/change_keybind
change profile keybind to backtick from i due to italics conflict
2019-06-07 00:16:54 +01:00