J. Ryan Stinnett
c0c22ba7f9
Merge pull request #4108 from matrix-org/jryans/a11y-editor-keyboard
...
Add shortcuts for beginning / end of composer
2020-02-24 12:02:03 +00:00
Matthew Hodgson
7696f704b2
Fix two big DOM leaks which were locking Chrome solid.
...
pillifyLinks leaked Pill components, which if they contained a BaseAvatar
would leak a whole DOM tree retained by the BaseAvatar's onClientSync
event listener. This tracks the Pill containers so they can be unmounted
via unmountPills.
BasicMessageComposer set an event listener on selectionchange in onFocus
which leaked if onBlur wasn't called. This removes it in unmount.
We've also seen Velociraptor retaining full DOM trees from RRs, which
this doesn't address as the leak is probably within Velocity, and the plan
is to replace it with CSS animations.
Should fix https://github.com/vector-im/riot-web/issues/12417
2020-02-22 23:51:30 +00:00
J. Ryan Stinnett
dc6a4854ce
Add shortcuts for beginning / end of composer
...
This adds Ctrl/Command+Home/End shortcuts for jumping to the start and end of
the composer contents.
Fixes https://github.com/vector-im/riot-web/issues/12438
2020-02-21 18:50:44 +00:00
Michael Telatynski
52ed55d887
Update placeholder when it changes, not sure how this ever worked
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-30 00:23:19 +00:00
Travis Ralston
915c4efeac
Ensure a plaintext version of the composer ends up on the clipboard
...
Fixes https://github.com/vector-im/riot-web/issues/12018
2020-01-23 15:53:32 -07:00
Michael Telatynski
26bba4416b
Fix emoticon space completion for upper case emoticons like :D xD
2020-01-21 10:12:23 +00:00
David Baker
277f107924
Set flag before mutating on cut too
2020-01-20 13:03:09 +00:00
David Baker
2ed5d89c9f
Fix arrows keys moving through edit history
...
Different fix that fixes https://github.com/vector-im/riot-web/issues/11817
by setting the flag before the callback rather than having the update
method set the flag.
Regressed in https://github.com/matrix-org/matrix-react-sdk/pull/3842
Fixes https://github.com/vector-im/riot-web/issues/11917
2020-01-20 12:20:21 +00:00
Travis Ralston
43f97af805
Merge pull request #3848 from matrix-org/travis/fix-cut
...
Remove all text when cutting in the composer
2020-01-16 15:03:41 -07:00
Travis Ralston
4ea2a2fee4
Merge branch 'develop' into t3chguy/fix_isModified
2020-01-16 09:46:28 -07:00
Travis Ralston
b137cd21d3
Replace the selected range instead of force-setting it
...
This gives people the option of cutting parts or all of their message.
2020-01-15 21:04:18 -07:00
Travis Ralston
be3ef2b50e
Remove all text when cutting in the composer
...
The previous function did in fact remove the elements, but left the model thinking there was a zero-length string. This approach deletes the text from the model and the DOM, resulting in the placeholder being shown when cutting all the text.
Part of https://github.com/vector-im/riot-web/issues/11378
2020-01-15 19:08:14 -07:00
Travis Ralston
cad9562f8d
Merge pull request #3828 from krkc/develop
...
Added cut/copy and pasting user pills from editor.
2020-01-15 15:36:33 -07:00
Michael Telatynski
d37c19d785
Fix timing of when Composer considers itself to be modified
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-01-15 00:27:54 +00:00
Christopher
59ea865e8e
Added missing semicolon.
2020-01-13 14:29:42 +00:00
Christopher
c370b28694
#11378 . Added cut/copy and pasting user pills from editor.
2020-01-12 16:19:24 +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
24d0d0d596
Merge pull request #3743 from matrix-org/t3chguy/react16_contexts
...
Migrate away from React Legacy contexts API
2019-12-19 20:32:11 +00:00
Michael Telatynski
d35b01b63a
Get rid of stripped-emoji.json in favour of an in-memory single truth source
2019-12-18 15:40:19 +00:00
Michael Telatynski
937b32663c
Migrate away from Legacy React Contexts
2019-12-17 17:26:12 +00:00
sha-265
bc924bbd82
Support RTL language in message composer
2019-11-04 17:37:36 +00:00
Michael Telatynski
5643743167
Don't intercept TAB on the app outside of the composer, fix tabIndex > 0
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-10 14:13:29 +01: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
91d593cb71
watch emoticon autoreplace setting
2019-10-08 14:40:10 +02:00
Michael Telatynski
f160a308b4
Make Autocomplete more accessible to screen reader users
...
Use ARIA to:
+ notate that the composer has an autocomplete
+ notate the open/closed state of the autocomplete
+ notate the name of the open autocomplete options
+ notate the ID of the highlighted autocomplete option
+ improve naming of emoji autocomplete options for screen readers
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-30 14:04:39 +01:00
Bruno Windels
8301943cfa
Merge pull request #3481 from matrix-org/bwindels/cider-ac-shifttab
...
Fix: don't block Shift+Tab in CIDER autocomplete
2019-09-26 15:08:36 +00:00
Bruno Windels
f5b9373eb5
don't block Shift+Tab keypresses
2019-09-26 11:00:55 +02:00
Bruno Windels
30af9a9056
need to check isComposing on native event
2019-09-25 16:11:37 +02:00
Bruno Windels
c8af1a6256
fixup: remove flag
2019-09-25 14:59:27 +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
4d151722ff
delay DOM modification after compositionend
2019-09-24 15:32:08 +02:00
Michael Telatynski
c286f2214f
Fix disabled save button on message editor when pasting
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-18 14:09:38 +01:00
Bruno Windels
48247e66be
use underscore for italics so it doesn't collide with bold when toggling
2019-09-06 17:52:37 +02:00
Bruno Windels
26bd694c6a
support toggling inline formatting
2019-09-06 16:25:55 +02:00
Bruno Windels
dd1c01068f
fix rename that didn't make it through rebasing
2019-09-06 11:58:27 +02: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
da29057fd8
move format bar to own component
2019-09-06 10:39:19 +02:00
Bruno Windels
92c0c1a4e2
add comment about positioning the format bar
2019-09-06 10:29:18 +02:00
Bruno Windels
4ef9fa53ac
better i18n
2019-09-05 11:10:13 +02:00