Commit graph

14491 commits

Author SHA1 Message Date
Bruno Windels
dd1c01068f fix rename that didn't make it through rebasing 2019-09-06 11:58:27 +02:00
J. Ryan Stinnett
2ff592c542 Use existing modal promises 2019-09-06 10:48:24 +01:00
Bruno Windels
5014b606db
Merge pull request #3391 from matrix-org/bwindels/cider-format-history
New composer: ensure undo history is persisted before applying formatting
2019-09-06 09:28:18 +00:00
Bruno Windels
df4762871a
Merge pull request #3392 from matrix-org/bwindels/cider-paste-plain
New composer: fix pasting from word processors
2019-09-06 09:22:37 +00:00
Bruno Windels
6b104f6344
Merge pull request #3393 from matrix-org/bwindels/cider-fix-lastcaret
New composer: fix needing to push arrow-up twice after sending first message after switching to a room
2019-09-06 09:22:10 +00:00
Bruno Windels
9dac91a70d ensure step before formatting is persisted in undo history 2019-09-06 11:20:24 +02:00
Bruno Windels
0252c7ae37 force pasting as plain text in new composer 2019-09-06 11:10:41 +02:00
Bruno Windels
2596281a7c update last caret from update callback instead of input event
many editor updates are not caused by an input event, so
the last caret wasn't always up to date.

Updating the caret from the update callback ensures that every
time the editor contents is changed, the last caret is updated.
2019-09-06 11:09:01 +02:00
Bruno Windels
f4938f9d11 dont format empty ranges 2019-09-06 10:59:41 +02:00
Bruno Windels
06143ba7a1 show keyboard shortcuts in format button tooltip 2019-09-06 10:59:41 +02:00
Bruno Windels
bdcea6f21e add shortcuts for formatting 2019-09-06 10:59:41 +02:00
Bruno Windels
d6a493a2b1 fixup: language strings moved 2019-09-06 10:39:19 +02:00
Bruno Windels
b4b9c7d072 Add tooltip for format buttons 2019-09-06 10:39:19 +02:00
Bruno Windels
da29057fd8 move format bar to own component 2019-09-06 10:39:19 +02:00
Bruno Windels
02681d50b9
Merge pull request #3386 from matrix-org/bwindels/cider-formatbar
New composer: show format bar on selection
2019-09-06 08:38:01 +00:00
Bruno Windels
92c0c1a4e2 add comment about positioning the format bar 2019-09-06 10:29:18 +02:00
Bruno Windels
d2949babcd copyright is solely assigned to matrix foundation now, copy paste error 2019-09-06 10:29:12 +02:00
Travis Ralston
af35cdc2ea Support sending hidden read receipts
Fixes https://github.com/vector-im/riot-web/issues/2527
2019-09-05 20:30:19 -06:00
J. Ryan Stinnett
d5552e4a17 Add bound 3PID warning when changing IS as well
This extends the bound 3PID warning from the disconnect button to also appear
when changing the IS as well. At the moment, the text is a bit terse, but will
be improved separately.

Fixes https://github.com/vector-im/riot-web/issues/10749
2019-09-05 17:52:46 +01:00
Bruno Windels
124b7135cd make sure the update callback gets a caret when calling reset 2019-09-05 17:54:08 +02:00
J. Ryan Stinnett
46ee52a406
Merge pull request #3388 from matrix-org/jryans/bound-3pids-warning
Add new agreed URLs to account data instead of overwriting
2019-09-05 15:02:15 +01:00
Travis Ralston
26eb617bec
Merge pull request #3384 from matrix-org/travis/fix-pl
Fix member power levels in room settings
2019-09-05 07:16:52 -06:00
J. Ryan Stinnett
0929a9cc72 Add new agreed URLs to account data instead of overwriting
This changes terms account data storage to always add, rather than setting only
the current set of displayed URLs.

Fixes https://github.com/vector-im/riot-web/issues/10755
2019-09-05 13:38:32 +01:00
Bruno Windels
4ef9fa53ac better i18n 2019-09-05 11:10:13 +02:00
Travis Ralston
d6adf0fd6d Add responsible error handling because we're responsible people 2019-09-04 11:24:31 -06:00
Bruno Windels
2ea556e0b4 support update callback setting selection instead of caret 2019-09-04 16:40:34 +02:00
Bruno Windels
037ac29c57 be more forgiving with offset that don't have atNodeEnd=true
if index is not found, it means the last position should be returned
if there is any.

We still return -1 for empty documents, as index should always point
to a valid part if positive.
2019-09-04 16:40:34 +02:00
Bruno Windels
42c37d8293 fixup: improve quote and code block newline handling 2019-09-04 16:40:34 +02:00
Bruno Windels
e0668e8517 improve algorithm to reduce selection to text node + charactar offset
this follows the documentation of {focus|anchor}{Offset|Node} better
and was causing problems for creating ranges from the document selection
when doing ctrl+A in firefox as the anchorNode/Offset was expressed
as childNodes from the editor root.
2019-09-04 16:40:34 +02:00
Bruno Windels
4691108a16 only increase offset if caret hasn't been found yet
also rename caret away as this isn't used for the caret solely anymore
2019-09-04 16:40:34 +02:00
Bruno Windels
7a01d1407f make _replaceRange internal only 2019-09-04 16:40:34 +02:00
Bruno Windels
4c04bc19c9 fixup: remove now unused import 2019-09-04 16:40:34 +02:00
Bruno Windels
6e694c113a add support for inline/block code formatting 2019-09-04 16:40:34 +02:00
Bruno Windels
b35a3531bb move quote formatting out of react component 2019-09-04 16:40:34 +02:00
Bruno Windels
b72d1a78ec move inline formatting code out of react component 2019-09-04 16:40:34 +02:00
Bruno Windels
47d8d86bbe whitespace (in model) 2019-09-04 16:40:23 +02:00
Bruno Windels
7f501b2aef first impl of quote formatting 2019-09-04 16:40:13 +02:00
Bruno Windels
d4c7992f5a first impl of inline formatting 2019-09-04 16:39:56 +02:00
Bruno Windels
c15dfc3c05 make Range start and end public 2019-09-04 16:38:42 +02:00
Bruno Windels
7dc39baaf3 implement bold support in format bar 2019-09-04 16:35:03 +02:00
Bruno Windels
77b14beb1f add getter for intersecting parts of range, and total length
we'll need this when replacing selection, to preserve
newlines, etc ... in the selected range (e.g. we can't just
use range.text).
2019-09-04 16:35:03 +02:00
Bruno Windels
48f1bf1816 sort positions in Range constructor, so start always comes before end 2019-09-04 16:35:03 +02:00
Bruno Windels
65ddfc0a50 show format bar when text is selected 2019-09-04 16:35:03 +02:00
Bruno Windels
4575aaa9f6
Merge pull request #3382 from matrix-org/bwindels/escape-command-slash
New composer: allow escaping the first slash to not write a command
2019-09-03 16:04:23 +00:00
Bruno Windels
9a409a7acc
Merge pull request #3381 from matrix-org/bwindels/plain-command
/plain command to bypass markdown conversion
2019-09-03 16:04:07 +00:00
J. Ryan Stinnett
3cb06c01b7
Merge pull request #3385 from matrix-org/jryans/email-invite-text
Improve email invite preview messaging
2019-09-03 16:58:14 +01:00
J. Ryan Stinnett
261bdab156 Fix indent 2019-09-03 16:55:17 +01:00
J. Ryan Stinnett
67299842e3 Use more specific messaging for email invite preview
This changes email invite previews to check more specific cases about whether
the email has been added to your account, you have an IS, the email is bound,
etc.

In addition, it always allows you to join if you want to.

Fixes https://github.com/vector-im/riot-web/issues/10669
2019-09-03 15:41:53 +01:00
Travis Ralston
2e3e2ec420 Fix member power levels in room settings
Fixes https://github.com/vector-im/riot-web/issues/10736

We didn't have an onChange property on the PowerSelector component
2019-09-03 08:36:24 -06:00
Bruno Windels
0d02ab59d6 allow starting a range with both positions known already
we'll need this to start a range for the selection
2019-09-03 16:00:50 +02:00
Bruno Windels
eb87301855 allow getting the DocumentOffset for any node+offset, not just focusNode
we need this to get both offsets of the selection boundaries

getSelectionOffsetAndText offers the extra flexibility,
getCaretOffsetAndText keeps the old api for focusNode/focusOffset

Also did some renaming here now that it's not just for the caret anymore
2019-09-03 15:58:50 +02:00
Bruno Windels
648ae37ff4 make DocumentOffset compatible with what is returned from dom/getCaret
so we can return a DocumentOffset from there without breakage
2019-09-03 15:58:05 +02:00
Bruno Windels
1063da0ed1
Revert "New composer: show markdown legend on focus" 2019-09-03 08:27:45 +00:00
Travis Ralston
71e13842b8
Merge pull request #3368 from matrix-org/travis/disable-msisdn
Disable MSISDN registration if the homeserver doesn't support it
2019-09-02 11:25:17 -06:00
Travis Ralston
5e8eb20c53
Merge pull request #3371 from matrix-org/travis/synapse_admin
Add a button to MemberInfo to deactivate a user
2019-09-02 11:08:45 -06:00
Bruno Windels
06ae0645c7 fix lint 2019-09-02 17:56:16 +02:00
Bruno Windels
712c3e5450 allow escaping the first slash to not write a command 2019-09-02 17:53:14 +02:00
Bruno Windels
41ca54bb09 /plain command to bypass markdown conversion 2019-09-02 17:44:31 +02:00
Bruno Windels
422f482a6d
Merge pull request #3378 from matrix-org/bwindels/cider-md-legend
New composer: show markdown legend on focus
2019-09-02 14:59:44 +00:00
Bruno Windels
de9f923e36
Merge pull request #3380 from matrix-org/bwindels/cider-fix-dirty-flag-without-input-event
New composer: allow submitting after inserting newline
2019-09-02 14:59:18 +00:00
Bruno Windels
6a0842d1ab
Merge pull request #3379 from matrix-org/bwindels/cider-deserialize-headers
Message editing: deserialize headers from html back to markdown
2019-09-02 14:58:54 +00:00
Bruno Windels
c4d7df768d
Merge pull request #3375 from matrix-org/bwindels/cider-colononmention
New composer: share user pill postfix between autocomplete and insert mention
2019-09-02 14:58:23 +00:00
Bruno Windels
ff74dd4b7f
Merge pull request #3374 from matrix-org/bwindels/fix-cider-command-detection
New composer: make command detection not break with pill candidates in command
2019-09-02 14:58:12 +00:00
Bruno Windels
eaed07fcbf
Merge pull request #3377 from matrix-org/bwindels/cider-noemptymsg
New composer: dont allow sending empty messages
2019-09-02 14:57:41 +00:00
J. Ryan Stinnett
00a69b996d Clarify invite error text
This fixes a typo in the message (valide) and also has better handling of error
codes, because in some cases, we don't get one.

Fixes https://github.com/vector-im/riot-web/issues/10683
2019-09-02 15:53:13 +01:00
Bruno Windels
6163cefa6a set dirty flag when programatically inserting text like with newlines 2019-09-02 16:29:25 +02:00
Bruno Windels
5b54cf566d deserialize headers from html back to markdown 2019-09-02 16:23:56 +02:00
Bruno Windels
f200327ef2 show/hide legend when focusing/blurring 2019-09-02 16:15:18 +02:00
Bruno Windels
b7768f34f2 Add legend and style it 2019-09-02 16:15:18 +02:00
Bruno Windels
b9cb22e153 dont allow sending empty messages 2019-09-02 14:36:31 +02:00
Bruno Windels
2683627a82 disable spell check for pills in the new composer 2019-09-02 14:26:15 +02:00
Bruno Windels
c595371845 share user pill postfix between autocomplete and insert mention
where we decide to add a colon only if the composer is empty
2019-09-02 14:06:30 +02:00
Bruno Windels
b46e001d0a allow pill-candidate parts in commands 2019-09-02 13:51:46 +02:00
Bruno Windels
4329d8c4ef
Merge pull request #3372 from matrix-org/bwindels/fix-command-tab-complete
New composer: fix tab-complete in commands
2019-09-02 11:38:13 +00:00
Bruno Windels
fdd23b34ae also look backwards into commands for last word to tab-complete 2019-09-02 11:27:22 +02:00
Bruno Windels
00d81eece9 don't accept @/#/: as part of command, allow to create pill candidate
so if you type these 3 characters, you get the correct autocomplete
2019-09-02 11:26:20 +02:00
Bruno Windels
a4376a76f0 only pass keyboard to autocomplete when it has selections
otherwise if tab is pressed, try to tab complete the last word
2019-09-02 11:25:29 +02:00
J. Ryan Stinnett
7032dc6fa1
Merge pull request #3367 from matrix-org/jryans/features-without-is
Add a dialog when inviting via slash command without IS
2019-09-02 10:14:09 +01:00
Travis Ralston
cfff576ef4 Add a button to MemberInfo to deactivate a user
Part of https://github.com/vector-im/riot-web/issues/4125
2019-09-01 18:04:24 -06:00
Michael Telatynski
6cc29b2a8c
Merge pull request #3363 from matrix-org/t3chguy/react16_6
Migrate away from React.createClass for auth and views/auth. React 16 :D
2019-09-01 22:46:55 +01:00
Michael Telatynski
517c7cba76
Merge pull request #3365 from matrix-org/t3chguy/react16_7
Migrate away from React.createClass for non-auth structures. React 16 :D
2019-09-01 22:46:43 +01:00
Travis Ralston
2bfffa76b5 Appease the linter 2019-08-30 15:54:00 -06:00
Travis Ralston
d47fb799a5 Disable MSISDN registration if the homeserver doesn't support it 2019-08-30 15:50:51 -06:00
J. Ryan Stinnett
8ff0883c22 Add a dialog when inviting via slash command without IS
This adds a dialog to ask how you want to proceed when trying to invite via
email when there is no IS configured.

Fixes https://github.com/vector-im/riot-web/issues/10619
2019-08-30 18:29:07 +01:00
Bruno Windels
63be16beff
Merge pull request #3366 from matrix-org/bwindels/cider-user-pill-text-fallback
New composer: put display name in user pill text fallback instead of mxid
2019-08-30 16:03:28 +00:00
Bruno Windels
3be32022f7
Merge pull request #3364 from matrix-org/bwindels/cider-ime-partii
New composer: force model update after IME composition finishes
2019-08-30 16:03:14 +00:00
Bruno Windels
ec0d048cf0
Merge pull request #3361 from matrix-org/bwindels/autocomplete-colon
New composer: append colon to completed user pill when at start of message
2019-08-30 16:02:58 +00:00
Michael Telatynski
00a06af419 Hide the E2EE PL selector if room is already encrypted
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-30 10:57:46 +01:00
Michael Telatynski
8967871b23 Merge branches 'develop' and 't3chguy/pl_control_e2e' of github.com:matrix-org/matrix-react-sdk into t3chguy/pl_control_e2e
 Conflicts:
	src/components/views/settings/tabs/room/RolesRoomSettingsTab.js
	src/i18n/strings/en_EN.json
2019-08-30 10:56:47 +01:00
Bruno Windels
b16f983a1f put display name in user pill text fallback instead of mxid 2019-08-30 11:51:29 +02:00
Bruno Windels
42ba5f6f0a force model update after composition finishes 2019-08-30 11:37:42 +02:00
Michael Telatynski
abf111ecbd Migrate away from React.createClass for non-auth structures. React 16 :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-30 10:34:59 +01:00
Michael Telatynski
2e1fb4533c Migrate away from React.createClass for auth and views/auth. React 16 :D
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-30 10:27:51 +01:00
J. Ryan Stinnett
27fdef557d
Merge pull request #3359 from matrix-org/jryans/features-without-is
Allow connecting to an IS from address picker
2019-08-30 10:19:28 +01:00
Bruno Windels
4779880a94
Merge pull request #3362 from matrix-org/bwindels/cider-no-enter-autocomplete
New composer: don't capture enter to close autocomplete
2019-08-30 08:17:47 +00:00
Travis Ralston
7dd6471059
Merge pull request #3018 from Sorunome/soru/spoilers
Add Spoilers as per MSC2010
2019-08-29 13:24:06 -06:00
Bruno Windels
c144edfcac dont capture enter to close autocomplete 2019-08-29 18:39:35 +02:00
Bruno Windels
5105140902
Merge pull request #3358 from matrix-org/bwindels/cider-paste-images
New composer: support pasting files
2019-08-29 16:31:28 +00:00
Bruno Windels
dc292d332d
Merge pull request #3357 from matrix-org/bwindels/cider-ime
New composer: don't update model while doing IME compositions
2019-08-29 16:31:05 +00:00
Sorunome
4ae130bd27
add license header, descriptive comment and change to class 2019-08-29 18:13:52 +02:00
Bruno Windels
c9572250be only append colon to user-pill when at start of composer
by passing position to autocomplete, so completion
can depend on where the pill-candidate appears.
2019-08-29 17:47:14 +02:00
Bruno Windels
2ff2ff0e75 support autocomplete replacing text with multiple parts
and append ": " to user pills
2019-08-29 17:43:18 +02:00
J. Ryan Stinnett
166fb696c2 Allow connecting to an IS from address picker
This allows those who previously disconnected from an IS to either choose the
default IS or a custom one from Settings via the address picker dialog.

Part of https://github.com/vector-im/riot-web/issues/10619
2019-08-29 15:28:34 +01:00
J. Ryan Stinnett
752eb17893 Remove subtext in room invite dialog
The subtext here was deemed redundant.

Part of https://github.com/vector-im/riot-web/issues/10619
2019-08-29 15:28:34 +01:00
Bruno Windels
fe7ac11abc New composer: support pasting files 2019-08-29 16:19:05 +02:00
Bruno Windels
891ccf0f4c don't update model while doing IME composition
this prevents the composition from being disrupted because
the DOM is modified, and also complete compositions are added
to the undo history like this.
2019-08-29 13:56:21 +02:00
Bruno Windels
80523f5dbe still convert \n to NewlinePart when pasting/dropping
before we skipped the complete validation (which creates NewlineParts)
when pasting or dropping text. We don't want to create PillCandidatePart
when inserting text like this, as it would open the auto-complete, but
newlines should still be applied. So instead of skipping validation,
pass the inputType to the validation code so they can only reject
pill candidate characters when not pasting.
2019-08-29 13:00:31 +02:00
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