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
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
0273795f5d
add transform step to composer to auto-replace emoticons with emoji
2019-08-26 16:16:27 +02: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
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
ffa49df889
Refactor integration manager handling into a common place
...
It was already in a common place, but this is the boilerplate for supporting multiple integration managers, and multiple integration manager sources.
For https://github.com/vector-im/riot-web/issues/4913 / https://github.com/vector-im/riot-web/issues/10161
2019-08-09 16:08:06 -06:00
Travis Ralston
3144b9f1a2
Disable 'Start New Chat' button in MemberInfo if we already have chats
...
Part of https://github.com/vector-im/riot-web/issues/10416
2019-08-07 12:06:27 -06:00
Bruno Windels
66ef08120e
Merge pull request #3282 from matrix-org/bwindels/extract-common-editor-code
...
Split MessageEditor up in edit-specifics & reusable parts for main composer
2019-08-07 07:58:52 +00:00
Michael Telatynski
daf1a794e6
Merge pull request #3276 from matrix-org/t3chguy/react16_1
...
Progress towards React 16 compatibility
2019-08-06 18:09:30 +01:00
Michael Telatynski
d99fb4796f
avoid using import * as Matrix
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-06 14:04:33 +01:00
Bruno Windels
299cf8542c
Split MessageEditor in edit-specifics & reusable part for main composer
2019-08-05 15:31:18 +02:00
Michael Telatynski
224dac3ffb
Remove withMatrixClient as we are committed to using Contexts
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-05 12:26:31 +01:00
Michael Telatynski
debc124714
Use the documented syntax for default props in CreateReactClass
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-05 10:08:07 +01:00
Michael Telatynski
1087e04bb5
Replace React.PropTypes with usage of the prop-types
package
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-31 12:19:29 +01:00
J. Ryan Stinnett
4ebafb93c3
Rename isAccessToken to identityAccessToken
2019-07-30 17:37:48 +01:00
J. Ryan Stinnett
dacb5d42ac
Support IS v2 auth in preview bar
2019-07-30 17:37:48 +01:00
J. Ryan Stinnett
244b613623
Convert 3PID lookup in preview bar to async / await
2019-07-30 17:37:48 +01:00
Michael Telatynski
bf1d65623c
Move history with alt up/down regardless of where selection is
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-29 11:31:22 +01:00
David Baker
2eb8a8879b
Merge pull request #3199 from matrix-org/dbkr/terms
...
ToS for ISes/IMs: prompt on use screen
2019-07-23 10:32:11 +01:00
J. Ryan Stinnett
599c49613f
Remove reactions feature flag
...
Fixes https://github.com/vector-im/riot-web/issues/10282
2019-07-17 17:00:36 +01:00
J. Ryan Stinnett
674f33917f
Remove editing feature flag
...
Part of https://github.com/vector-im/riot-web/issues/10282
2019-07-17 16:56:15 +01:00
Travis Ralston
31339aa11f
Don't show a reason if there's no reason for a kick/ban
...
Fixes https://github.com/vector-im/riot-web/issues/9677
2019-07-14 23:31:38 -06:00
Travis Ralston
ed2f88fd79
Autojoin rooms when clicking the tombstone
...
Fixes https://github.com/vector-im/riot-web/issues/10299
2019-07-11 08:39:41 -06:00
David Baker
83f697a9a2
lint
2019-07-09 19:01:22 +01:00
David Baker
d4af8d4993
Use showIntegrationsManager in other places
2019-07-09 18:56:39 +01:00
David Baker
54aaabac74
Initial support for ToS dialogs for IS/IM
...
as per MSC2140
2019-07-09 18:51:56 +01:00
Michael Telatynski
89d568ce97
Don't allow editing via up-arrow when Replying
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-05 08:36:16 +01:00
David Baker
b43a04634a
Merge pull request #3172 from matrix-org/t3chguy/invites_list
...
Fix logic around MemberList invites section, specifically regarding 3pid
2019-07-03 16:01:01 +01:00
Travis Ralston
7dbd17c137
Merge pull request #3150 from matrix-org/travis/less-typing
...
Track the user's own typing state external to the composer
2019-07-03 08:33:42 -06:00
Bruno Windels
353f5a205c
Merge pull request #3170 from matrix-org/bwindels/handle-associated-failures
...
Handle associated event send failures
2019-07-03 09:02:58 +00:00
Michael Telatynski
bc4bff64f6
Fix logic around MemberList invites section, specifically regarding 3pid
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-07-03 08:38:08 +01:00
Travis Ralston
1d54911581
Merge pull request #3159 from matrix-org/travis/pick-server-tombstone
...
Use the event sender instead of event ID for viaServers off a tombstone
2019-07-02 07:52:40 -06:00
Bruno Windels
d0d327620b
hide reactions for redacted events
2019-07-02 13:56:27 +02:00
Travis Ralston
4f6db320e3
Appease the linter
2019-06-28 16:44:19 -06:00
Travis Ralston
8905566cfb
Clean up legacy breadcrumbs persistence fallback
...
It's been more than a few weeks.
2019-06-28 16:30:59 -06:00
Travis Ralston
083c1a78ab
Use the event sender instead of event ID for viaServers off a tombstone
...
Fixes https://github.com/vector-im/riot-web/issues/10206
2019-06-28 12:34:46 -06:00
Travis Ralston
8bb860e870
Use fewer functions for typing in the composer
2019-06-27 10:37:33 -06:00
Travis Ralston
17ed62de7d
Move MessageComposer typing timeout to TypingStore
2019-06-27 10:35:44 -06:00
Travis Ralston
7f2ab39609
Merge pull request #3142 from matrix-org/travis/preview-loading
...
Show a loading state for slow peeks
2019-06-27 09:24:25 -06: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
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
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
J. Ryan Stinnett
91f707341a
Tweak handler name to match others
2019-06-25 15:12:30 +01:00
Bruno Windels
5fa3f70fb4
feature flag for displaying edits as well
2019-06-21 18:32:15 +02: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
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
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
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
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
Travis Ralston
974a11ed20
Defer scalar auth in AppsDrawer to widgets/manager dialog
2019-06-17 15:39:32 -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
Michael Telatynski
03c37821f6
clean up onVerticalArrow
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-06-15 15:10:34 +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
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
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
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
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
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
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
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