Commit graph

5650 commits

Author SHA1 Message Date
Bruno Windels
85efb71a23 add visual bell when no replacements are available
also add try/catch in _tabCompleteName so errors don't get swallowed
2019-08-28 15:53:16 +02:00
Michael Telatynski
f70f983c8c Expose upgrade room permissions in room settings and fix command
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-28 12:00:37 +01:00
Michael Telatynski
66714b29af expose power level toggle for enabling e2ee to room settings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-28 11:37:20 +01:00
J. Ryan Stinnett
ac6b03551a
Describe props default
Co-Authored-By: Travis Ralston <travpc@gmail.com>
2019-08-28 11:24:11 +01:00
David Baker
ac2b8b874f Don't infinite loop on server change
ServerConfig assumed that the state was already correct when
checking the given urls against the default, but that is not
neccessarily the case (eg. the validation can return a different
url to what the user entered). This would cause an infinite loop
because it would keep firing onServerConfigChange to change to
the desired URLs but the state would never change.

Fixes part of https://github.com/vector-im/riot-web/issues/10666
2019-08-27 17:29:56 -04:00
Travis Ralston
3eddded039 Merge branch 'develop' into travis/tabbed-managers 2019-08-27 09:07:52 -06:00
Bruno Windels
d8bb9ecedf bring insert method inline with transform callback, add docs
before the insertPartsAt method would call the update callback
on its own, but now we have the concept of a transformation session,
so lets bring the API in line
2019-08-27 16:43:05 +02:00
Bruno Windels
f5bb872efa some cleanup 2019-08-27 16:43:05 +02:00
Bruno Windels
f02713d08e force completion when hitting tab
by replacing word before caret with pill-candidate and
forcing auto complete
2019-08-27 16:43:05 +02:00
Bruno Windels
f76a23d5dd return promise from updating autocomplete
so one can await if needed
2019-08-27 16:43:05 +02:00
Bruno Windels
e0b99b5cc8
Merge pull request #3342 from matrix-org/bwindels/cider-replace-emoticons
Auto-replace emoticons with emojis in new composer
2019-08-27 14:40:53 +00:00
Travis Ralston
08339abd35
Merge pull request #3348 from matrix-org/travis/fix-discovery
Adjust copy and include identity server changing when terms are pending
2019-08-27 08:27:03 -06:00
Bruno Windels
56606a46f4 don't assume preceding space for emoticon at start of document
also add more inline comments to explain what is going on
2019-08-27 09:50:36 +02:00
Travis Ralston
abbc8ffef0 Adjust copy and include identity server changing when terms are pending
Fixes https://github.com/vector-im/riot-web/issues/10636
Fixes https://github.com/vector-im/riot-web/issues/10635
2019-08-26 11:26:21 -06:00
Bruno Windels
0273795f5d add transform step to composer to auto-replace emoticons with emoji 2019-08-26 16:16:27 +02:00
Michael Telatynski
d94e2179bf Migrate away from React.createClass for views/dialogs. React 16 :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-24 11:59:46 +01:00
Travis Ralston
e8b0c41157 minus ; 2019-08-23 12:01:47 -06:00
Travis Ralston
c44ae2df4d Treat 404 errors on IS as having no terms
Fixes https://github.com/vector-im/riot-web/issues/10634
2019-08-23 11:58:04 -06:00
J. Ryan Stinnett
72ec6c7062 Reveal custom IS field only when required
This hides the identity server at first from the custom server auth flows. For
the flows that may need an IS if the HS requires it (registration, password
reset), we then check with the HS before proceeding further and reveal the IS
field if it is in fact needed.

Fixes https://github.com/vector-im/riot-web/issues/10553
2019-08-23 18:43:55 +01:00
Travis Ralston
160396ca9e Appease the linter 2019-08-23 09:16:44 -06:00
Travis Ralston
b3cda4b19a Support multiple integration managers behind a labs flag
Fixes https://github.com/vector-im/riot-web/issues/10622
Implements [MSC1957](https://github.com/matrix-org/matrix-doc/pull/1957)

Design is not final.
2019-08-23 09:12:40 -06:00
Bruno Windels
f39dc6feab
Merge pull request #3287 from matrix-org/bwindels/new-main-composer
Support editing composer to be used as main composer (feature flagged)
2019-08-23 10:06:19 +00:00
Michael Telatynski
cd6a980c7e Only Destroy the expected persistent widget, not *ANY*
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-22 16:57:51 +01:00
Travis Ralston
efe8254985
Merge pull request #3333 from matrix-org/travis/fix-tooltip
Remove tooltipClassName from the Field's input
2019-08-22 08:40:23 -06:00
Travis Ralston
fbb2af00da
Merge pull request #3335 from matrix-org/travis/fix-alignment
Fix alignment of discovery section addresses
2019-08-22 08:35:11 -06:00
Bruno Windels
944c56d09b prevent cider history overlapping with slate composer history 2019-08-22 14:07:03 +01:00
Bruno Windels
6a3ecde4e6 duplicate slate code where we changed it drastically
to still make it work when the feature flag will be turned off
2019-08-22 14:05:54 +01:00
Bruno Windels
b366b0b3d8 store composer state when typing in new composer
this doesn't use the MessageComposerStore on purpose so that
both the new and old composer don't overwrite each others state,
as the format is different.
2019-08-22 13:33:20 +01:00
Bruno Windels
9f72268df7 avoid null-refs when receiving an action before initial rendering 2019-08-22 13:33:20 +01:00
Bruno Windels
6df46cc319 send typing notifs in new composer (both send and edit) 2019-08-22 13:33:20 +01:00
Bruno Windels
e2dfe888cc only capture Enter when autocompletion list has selection
this is the old behaviour and makes sense IMO
also close the auto complete when resetting the composer model,
in case it was still open
2019-08-22 13:33:20 +01:00
Bruno Windels
3c5cf3e778 rename ComposerHistoryManager to SendHistoryManager to avoid confusion
...with the undo history manager for the composer.
2019-08-22 13:33:20 +01:00
Bruno Windels
c5cd8b943a support auto complete for /commands 2019-08-22 13:33:20 +01:00
Bruno Windels
88cc1c428d add support for emotes and running /commands
this does not yet include autocomplete for commands
2019-08-22 13:33:20 +01:00
Bruno Windels
cc82353d8f bring back composer send history and arrow up to edit previous message 2019-08-22 13:33:20 +01:00
Bruno Windels
ca3539d53e remove dead code 2019-08-22 13:33:20 +01:00
Bruno Windels
9bc8ff7e1e clear composer undo history when sending a message 2019-08-22 13:33:20 +01:00
Bruno Windels
ea1faacd8b support alt+enter on mac, like slate composer 2019-08-22 13:33:20 +01:00
Bruno Windels
9003a8836a put dispatches together 2019-08-22 13:33:20 +01:00
Bruno Windels
2e71dd3ea8 cleanup, move code out of big switch statement 2019-08-22 13:33:20 +01:00
Bruno Windels
60e10364b0 add quoting functionality to new composer 2019-08-22 13:33:20 +01:00
Bruno Windels
10c218825b allow inserting multiple parts at a position 2019-08-22 13:33:20 +01:00
Bruno Windels
a9d6d01f10 add reply fields to message content to be sent when replying 2019-08-22 13:33:20 +01:00
Bruno Windels
7b3282185a update proptypes 2019-08-22 13:33:20 +01:00
Bruno Windels
c135cd60d2 restore insert mention
for this, we need to store the last caret in the editor,
to know where to insert the user pill.

Because clicking on a member blurs the editor, and the
selection is moved away from the editor.

For this reason, we keep as cache of the last caretOffset object,
invalidated by a selection with different values.

The selection needs to be cloned because apparently the browser
mutates the object instead of returning a new one.
2019-08-22 13:33:20 +01:00
Bruno Windels
71286b5610 restore reply_to_event action 2019-08-22 13:33:20 +01:00
Bruno Windels
e39c405c55 restore focus_composer action 2019-08-22 13:33:20 +01:00
Bruno Windels
fdf5fca628 add all props to proptypes 2019-08-22 13:33:20 +01:00
Bruno Windels
2cff486ec0 set placeholder same as label 2019-08-22 13:33:20 +01:00
Bruno Windels
f9992a1fc6 implement editor placeholder 2019-08-22 13:33:20 +01:00
Bruno Windels
e2e4ea493f set aria label on main composer too 2019-08-22 13:33:20 +01:00
Bruno Windels
cfbd2e9cc8 support basic sending with new main composer
this removes all formatting options, as the new editor doesn't
have any.
2019-08-22 13:33:20 +01:00
Bruno Windels
df8488e194 pass label through props 2019-08-22 13:33:20 +01:00
Bruno Windels
505846ce53 split up css, update class names 2019-08-22 13:33:20 +01:00
Bruno Windels
341fdcd761 cleanup lint errors 2019-08-22 13:33:20 +01:00
Travis Ralston
6449016d4b Fix alignment of discovery section addresses
We target the addresses specifically to avoid crushing the subsection text.
2019-08-21 14:41:25 -06:00
Travis Ralston
54633f3ad4 Remove extraneous logging 2019-08-21 12:57:54 -06:00
Travis Ralston
6f7bbf958e Remove tooltipClassName from the Field's input
React doesn't want the property on the <input>, so we'll take it off.
2019-08-21 12:51:16 -06:00
Travis Ralston
04bb2ed322
Merge pull request #3327 from matrix-org/travis/discover-terms
Handle terms agreement in Discovery section of user settings
2019-08-21 10:14:45 -06:00
Travis Ralston
5bf0587cc5 Don't double translate labs settings
SettingsStore.getDisplayName() already calls _t() for us.

Fixes https://github.com/vector-im/riot-web/issues/10586
2019-08-21 08:55:19 -06:00
Travis Ralston
2dc28a608f Move URL abbreviation to its own util file 2019-08-21 08:46:10 -06:00
Travis Ralston
c758b5d3f1 We don't use reject 2019-08-21 08:43:42 -06:00
Travis Ralston
f55a40001c Touch up settings: alignment, spacing, error states
Fixes https://github.com/vector-im/riot-web/issues/10554

Issues fixed:
* Fields were not ~30px from the avatar (too much right margin)
* Tooltips overflowed the dialog on some resolutions
* SetIdServer didn't have an error state for making the field red
* Spacing between sections in Discovery was wrong (fixed by just removing the problematic n+2 selector - it didn't help anything)
2019-08-20 13:20:07 -06:00
Jason Robinson
29085895a7 Fix regression on widget panel edit button
Due to commit ffa49df889
the parameters for the call to open a widget in edit mode from the
widget panel in a room has broken. The `screen` parameter needs
to be prefixed with `type_` as it was before.

This corresponds to parameters supplied when creating the URL when
opening a widget in edit mode through Scalar screens.

Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-08-20 15:55:57 +03:00
David Baker
f5da870040
Merge pull request #3326 from matrix-org/dbkr/device_name_public
Clarify that device names are publicly visible
2019-08-20 09:29:45 +01:00
Travis Ralston
7cd2fb3718 Appease the linter
It really wants a trailing comma.
2019-08-19 23:03:01 -06:00
Travis Ralston
3181829532 Use new InlineTermsAgreement component on IS Discovery section
Fixes https://github.com/vector-im/riot-web/issues/10522
2019-08-19 23:00:05 -06:00
Travis Ralston
417de0cac7 Add an inline terms agreement component
Handles agreement of terms in an inline way.
2019-08-19 22:59:33 -06:00
Travis Ralston
83af732d05 Rename and export abbreviateIdentityUrl 2019-08-19 22:53:37 -06:00
J. Ryan Stinnett
fef3438ef1
Merge pull request #3325 from matrix-org/jryans/tweak-privacy-copy
Tweak privacy settings copy and whitespace
2019-08-19 21:35:49 +01:00
David Baker
f7083ac332 Clarify that device names are publicly visible
And also a bunch of other UI fixes in the devices table:
 * It's the devices table, don't need 'device' in all the headers
 * Not really necessary to label checkboxes with 'select'
 * Stop table from moving down when the delete button appears

Fixes https://github.com/vector-im/riot-web/issues/10216
2019-08-19 18:09:37 +01:00
Travis Ralston
2d4c2b76d9 Merge branch 'develop' into travis/is-account-data 2019-08-19 10:36:42 -06:00
Travis Ralston
95bd41aac7
Merge pull request #3317 from matrix-org/travis/terms/inline-is-only
Prompt for terms of service on identity server changes
2019-08-19 10:35:58 -06:00
Travis Ralston
32abfbbfc6 Rename functions 2019-08-19 10:27:57 -06:00
David Baker
6879ddd34c
Merge pull request #3323 from matrix-org/dbkr/add_3pid_without_is
Allow 3pids to be added with no ID server set
2019-08-19 17:02:56 +01:00
David Baker
93af6cfd8d Fix up remove threepid confirmation UX
Probably still not the best design but hopefully break fewer UX rules:

1. Use red to confirm delete rather than cancel and green to cancel
2. Show the action you're about to perform in the confirmation
3. Label confirmation button with the action rather than yes/no.
2019-08-19 15:37:12 +01:00
David Baker
c1b72fd346 Allow 3pids to be added with no ID server set
Fixes https://github.com/vector-im/riot-web/issues/10573
2019-08-19 15:17:14 +01:00
J. Ryan Stinnett
5af9bf7b80 Use designed text for new IS field 2019-08-19 14:44:53 +01:00
J. Ryan Stinnett
d4ecb99d11 Show the default IS as a placeholder in Settings
This changes the UX for the set IS field to show the default IS as a placeholder
value (as opposed to an initial value as if the user had actually entered it).

Fixes https://github.com/vector-im/riot-web/issues/10528
2019-08-19 14:20:01 +01:00
J. Ryan Stinnett
07826c5675 Hide 3PID discovery sections when no identity server
This hides the email and phone sections of Discovery in the Settings when there
is no IS, as they can't meaningfully be used.

Part of https://github.com/vector-im/riot-web/issues/10528
2019-08-19 14:03:43 +01:00
David Baker
2a626c3f7c
Merge pull request #3318 from matrix-org/dbkr/allow_register_email_no_is
Allow registering with email if no ID Server
2019-08-19 11:18:30 +01:00
Travis Ralston
51946d2a74 Persist and maintain identity server in account data
Fixes https://github.com/vector-im/riot-web/issues/10094

MSC: https://github.com/matrix-org/matrix-doc/pull/2230
2019-08-16 13:10:41 -06:00
Travis Ralston
3228062954 Merge branch 'travis/terms/inline-is-only' into travis/is-account-data 2019-08-16 12:45:40 -06:00
Michael Telatynski
a96df333e9
Merge pull request #3310 from matrix-org/t3chguy/fix_reply_parent_redacted
Fix showing events which were replied to and then redacted
2019-08-16 19:19:25 +01:00
Travis Ralston
2456912ec7 Merge remote-tracking branch 'origin/develop' into travis/terms/inline-is-only 2019-08-16 09:41:00 -06:00
David Baker
41a9db3224 Use new flag in /versions 2019-08-16 15:07:15 +01:00
Travis Ralston
218bee8071
Merge pull request #3316 from matrix-org/travis/terms/inline-im-is
Prompt for terms of service on integration manager changes
2019-08-16 07:31:36 -06:00
David Baker
e705d110af Allow registering with email if no ID Server
If the server advertises that it supports doing so

This version uses a random me.dbkr prefix until the MSC is
written.

Requires https://github.com/matrix-org/matrix-js-sdk/pull/1017
Implements https://github.com/matrix-org/matrix-doc/pull/2233
2019-08-16 11:57:32 +01:00
David Baker
cde1944cac
Merge pull request #3314 from matrix-org/dbkr/warn_if_bound_threepids
Warn on disconnecting from IS
2019-08-16 10:56:39 +01:00
Travis Ralston
02f8b72533 tfw the linter finds bugs for you 2019-08-15 16:08:18 -06:00
Travis Ralston
9860baf0b4 Prompt for terms of service on identity server changes
Part of https://github.com/vector-im/riot-web/issues/10539
2019-08-15 16:02:02 -06:00
Travis Ralston
5fe691cf33 Double equals 2019-08-15 13:33:02 -06:00
Travis Ralston
e2f013ddb4 Appease the linter
This looks awkward, but should pass.
2019-08-15 13:31:45 -06:00
Travis Ralston
27504e1578 Prompt for terms of service on integration manager changes
Part of https://github.com/vector-im/riot-web/issues/10539
2019-08-15 13:28:23 -06:00
David Baker
7d96cc969a
use original bug
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2019-08-15 15:39:15 +01:00
David Baker
ded2297523
Merge pull request #3315 from matrix-org/dbkr/fix_set_im
Fix set integration manager tooltip
2019-08-15 15:38:34 +01:00
J. Ryan Stinnett
1c6312d999 Store ICE fallback permission in device setting
This stores the ICE server fallback permission in a device setting so it is
remembered across sessions.

Part of https://github.com/matrix-org/matrix-react-sdk/pull/3309
2019-08-15 15:04:23 +01:00
David Baker
40f693d0fc Fix set integration manager tooltip
The name of the prop changed in the original PR and this one didn't
get updated.
2019-08-15 14:55:59 +01:00
David Baker
6f07f9157c lint 2019-08-15 13:10:05 +01:00
David Baker
54fb1b5302 Unused variables / imports 2019-08-15 12:07:59 +01:00