Michael Telatynski
b34fe45518
First attempt. Has a lag issue due to the async-clear :(
2020-01-21 16:50:04 +00:00
Michael Telatynski
060938379a
Fix changes after typing / at pos=0 allowing to cancel command
2020-01-21 15:58:51 +00:00
Michael Telatynski
b5e902e1f2
Fix escaping commands using double-slash //, e.g //plain sends /plain
2020-01-21 15:55:21 +00:00
Travis Ralston
fde32f13a5
[CONFLICT CHUNKS] Merge branch 'develop' into travis/sourcemaps-develop
2020-01-09 14:15:09 -07:00
Travis Ralston
d56f0f2a25
Convert many imports to handle ES6 exports
...
Reliant upon https://github.com/matrix-org/matrix-react-sdk/pull/3761
2019-12-22 21:04:42 -07:00
Michael Telatynski
937b32663c
Migrate away from Legacy React Contexts
2019-12-17 17:26:12 +00:00
Michael Telatynski
178accae19
Fix error message which is shown when unknown slash command attempted
2019-10-31 10:49:24 +00:00
Michael Telatynski
58317b1608
Use Keyboard Key variables instead of hardcoded strings
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 19:59:11 +01:00
Bruno Windels
77a61519ef
also allow commands to be pill-candidates
2019-09-30 11:15:46 +02:00
Bruno Windels
99961df9d0
Merge pull request #3479 from matrix-org/bwindels/command-detection-resilience
...
Fix: make command detection more resilient
2019-09-26 07:36:25 +00:00
Bruno Windels
0bbbb5e336
use mxid for user pill in command
2019-09-25 17:30:12 +02:00
Bruno Windels
c760ba0839
make command detection more resilient
2019-09-25 17:30:01 +02:00
Bruno Windels
ffe34ee8a1
try to see if this fixes safari back
...
on of the 2 changes (updating dom async from compositionend,
or ignoring keydown while composing) here has, while fixing chrome,
broken safari.
Don't do the async dom updating for safari if that was it.
2019-09-25 14:47:35 +02:00
Bruno Windels
7bda1c58eb
better naming
2019-09-25 14:45:39 +02:00
Bruno Windels
9f47fad305
ignore keydown events while doing IME composition
2019-09-24 15:32:30 +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
1063da0ed1
Revert "New composer: show markdown legend on focus"
2019-09-03 08:27:45 +00: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
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
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
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
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
fe7ac11abc
New composer: support pasting files
2019-08-29 16:19:05 +02: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
944c56d09b
prevent cider history overlapping with slate composer history
2019-08-22 14:07:03 +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
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
9bc8ff7e1e
clear composer undo history when sending a message
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
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