Commit graph

14282 commits

Author SHA1 Message Date
Bruno Windels
e531b29307 don't ignore BR elements when converting to editor dom to text 2019-08-29 13:00:31 +02:00
Sorunome
fe9ae46ffb
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into soru/spoilers 2019-08-28 20:23:24 +02:00
J. Ryan Stinnett
599fccd9ce
Merge pull request #3343 from matrix-org/jryans/hide-is-field-during-auth
Reveal custom IS field only when required
2019-08-28 18:36:02 +01:00
Travis Ralston
838e115b72
Merge pull request #3338 from matrix-org/t3chguy/fix_jitsi_persisted_breaking_randomly
Only Destroy the expected persistent widget, not *ANY*
2019-08-28 10:49:29 -06:00
Michael Telatynski
a8c5b02464
Merge pull request #3352 from matrix-org/t3chguy/pl_room_upgrade
Expose upgrade room permissions in room settings and fix command
2019-08-28 17:44:50 +01:00
Bruno Windels
f119ac4b22
Merge pull request #3349 from matrix-org/bwindels/tab-complete-name
New composer: support forcing auto complete on name by hitting tab
2019-08-28 16:17:16 +00:00
Bruno Windels
29f96e659a remove leftover code 2019-08-28 17:53:03 +02:00
David Baker
aa9c0b24fe re-run i18n 2019-08-28 10:37:57 -04:00
David Baker
c749b6355f Update email help text
Fixes https://github.com/vector-im/riot-web/issues/10674
2019-08-28 10:34:50 -04:00
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
Bruno Windels
c44fbb73d0 fix bug when replacing range starting at end of previous part 2019-08-28 15:52:39 +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
7000b5a5ad Update i18n 2019-08-28 11:32:36 +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
Travis Ralston
971e1ac8c3
Merge pull request #3340 from matrix-org/travis/homeserver-managers
Support homeserver-configured integration managers
2019-08-27 09:07:09 -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
8e66d382de don't crash on race with room members and initial composer render
not ideal, but for now this prevents a crash at startup
when a user-pill is persisted in local storage
2019-08-27 16:43:05 +02:00
Bruno Windels
e0ec827a64 extra docs 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
68c2bb7ca6 introduce transform method so update can be called with a position
and also for multiple transformations at once. This removes
the need to call the update callback from `replaceRange()` as well
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
0f6465a1db don't close autocomplete when hitting tab
that's not what the slate impl does and it's not an improvement
2019-08-27 16:43:05 +02:00
Bruno Windels
713205e0ab close autocomplete when removing auto-completed part 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
f10e1d7654 fix jsdoc comments 2019-08-27 09:54:13 +02: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
Bruno Windels
5c28b57681 always recalculate position after doing transform step
as the amount of characters might not have changed,
parts may still have been merged, removed or added which
requires a new position.
2019-08-27 09:49:22 +02:00
Michael Telatynski
8bdc1e9446
Merge pull request #3347 from matrix-org/t3chguy/react16_5
Migrate away from React.createClass for views/dialogs. React 16 :D
2019-08-26 19:45:26 +01: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
Bruno Windels
4fd4ad41c1 improve editor model documentation 2019-08-26 16:16:27 +02:00
Bruno Windels
f8f0e77bde add transform step during editor model update 2019-08-26 16:16:27 +02:00
Bruno Windels
0e65f71a37 support incrementing/decrementing doc positions with predicate 2019-08-26 16:16:27 +02:00
Bruno Windels
10291bafe0 add support for selecting ranges in the editor model, and replacing them
this to support finding emoticons and replacing them with an 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
Michael Telatynski
360cef66c1 Migrate away from React.createClass for async-components. React 16 :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-24 11:53:28 +01:00
Michael Telatynski
e5d3198f53
Merge pull request #3339 from matrix-org/t3chguy/substitute_handle_global
Iterate over all instances of variable/tag for _t substitutions
2019-08-23 19:43:40 +01:00
Travis Ralston
e8b0c41157 minus ; 2019-08-23 12:01:47 -06:00
Travis Ralston
e1552b61fc fix i18n 2019-08-23 12:01:13 -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
J. Ryan Stinnett
47ee299e70
Merge pull request #3337 from matrix-org/jryans/is-token-to-hs
Add IS access token callback
2019-08-23 17:13:55 +01:00
Travis Ralston
dc0c7e3053
Merge pull request #3331 from matrix-org/jaywink/extra-rageshake-cleanup
Tweak rageshake logging messages
2019-08-23 09:59:05 -06: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
Travis Ralston
602c338a26 Merge branch 'travis/homeserver-managers' into travis/tabbed-managers 2019-08-23 08:50:21 -06:00
J. Ryan Stinnett
84e3d339ac Change to provider object 2019-08-23 11:17:51 +01: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
Jason Robinson
f505aa0c83 Ensure logging tweak doesn't fail on undefined
Run the replace on the log line string instead of the separate
parts since we can ensure the line is a string.

Signed-off-by: Jason Robinson <jasonr@matrix.org>
2019-08-23 10:14:26 +03:00
Travis Ralston
470295ad14 Expose a getOrderedManagers() function for use elsewhere 2019-08-22 15:17:59 -06:00
Travis Ralston
8493887ceb Import the right js-sdk 2019-08-22 14:57:09 -06:00
Travis Ralston
a35735da45 Support homeserver-configured integration managers
Fixes https://github.com/vector-im/riot-web/issues/4913
Requires https://github.com/matrix-org/matrix-js-sdk/pull/1024
Implements part of [MSC1957](https://github.com/matrix-org/matrix-doc/pull/1957)
2019-08-22 14:49:20 -06:00
Michael Telatynski
7d511fbbc5 remove leftover debugger =)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-22 18:34:26 +01:00
Michael Telatynski
310457059b [i18n] only append tail if it is actually needed
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-22 18:31:02 +01:00
Michael Telatynski
b5daba9026 Iterate over all instances of variable/tag for _t substitutions
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-22 18:17:08 +01: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
Travis Ralston
e9b44c9802
Merge pull request #3336 from matrix-org/travis/fix-removing-widgets
No-op removals of widgets that don't exist
2019-08-22 08:34:11 -06:00
J. Ryan Stinnett
e7097d58ec Add IS access token callback
This passes a callback to the JS SDK which it can use to get IS access tokens
whenever needed for either talking to the IS directly or passing along to the
HS.

Fixes https://github.com/vector-im/riot-web/issues/10525
2019-08-22 14:44:09 +01:00
Bruno Windels
5cebce9bbf fix bug detected by tests 2019-08-22 14:41:40 +01:00
Bruno Windels
9c6953f176 lint 2019-08-22 14:11:04 +01:00
Bruno Windels
8c9846efc1 update i18n 2019-08-22 14:10:08 +01:00
Bruno Windels
b395fad834 add feature flag, allowing to revert to old slate editor 2019-08-22 14:07:43 +01:00
Bruno Windels
6e54bb8e51 default is unused here 2019-08-22 14:07:31 +01: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
0adca10f9f make named options argument optional 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
ce44c651d0 keep deserialized parts compatible with part api,
to avoid breakage when passing real parts
2019-08-22 13:33:20 +01:00
Bruno Windels
d4fbe7ed69 make editor event parsing suitable for parsing messages to be quoted 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