Bruno Windels
ff61376c07
Merge pull request #3004 from matrix-org/bwindels/update-link-previews-after-edit
...
Message editing: update link previews after editing
2019-05-22 14:17:34 +00:00
Bruno Windels
6b1134bdf0
add matrix foundation copyright header
2019-05-22 16:16:32 +02:00
Travis Ralston
907c7ed119
Merge pull request #2994 from matrix-org/travis/screenreader/topleftmenu
...
Update TopLeftMenu for accessibility: Keyboard shortcut, reduced screen reader noise
2019-05-21 09:52:26 -06:00
Bruno Windels
2d4d608ed6
Merge pull request #2997 from matrix-org/bwindels/pill-avatars
...
Message editing: render avatars for pills in the editor
2019-05-21 12:11:06 +00:00
Bruno Windels
b00a38a1e5
apply mx_EventTile_content to editor, so it gets the same right margin
...
this way we don't have to include it in the magic number
2019-05-21 12:18:20 +02:00
Matthew Hodgson
d3f06763b3
Merge branch 'develop' into matthew/twemoji
2019-05-20 16:38:44 +01:00
J. Ryan Stinnett
0e5f0f24cc
Extract MELS-style comma separated list to shared utility
...
This allows other UI components to use the same formatting for a long list.
2019-05-20 15:21:18 +01:00
Bruno Windels
710338c01f
pass member and room to editor pills to get avatar url
2019-05-20 10:28:26 +02:00
Matthew Hodgson
dc72641264
replace emojione with twemoji. completely untested & debugged & unoptimised
2019-05-19 15:23:43 +01:00
Travis Ralston
c5757d8303
Support CTRL+I for opening TopLeftMenu
2019-05-17 15:29:16 -06:00
Bruno Windels
62b8973e72
cancel the edit when pressing escape
2019-05-17 15:35:14 +01:00
Bruno Windels
ca2e6d8eb2
Message editing: shift+enter for newline, enter to send
2019-05-17 10:22:02 +01:00
Bruno Windels
245f48a22c
set caret on mount as we usually do, so FF doesn't enter 2 newlines 🤯
2019-05-16 18:39:20 +01:00
J. Ryan Stinnett
0e369bd12e
Merge pull request #2977 from matrix-org/jryans/encrypted-reactions
...
Use `getRelation` helper
2019-05-16 09:45:09 +01:00
J. Ryan Stinnett
33885cb864
Use getRelation
helper
...
Use the `getRelation` helper to ensure we always read relation info from the
wire content as required in E2E rooms.
2019-05-16 09:25:33 +01:00
Travis Ralston
6f22acc3c6
Merge pull request #2979 from aaronraimist/imageview-tooltip
...
Add tooltips to rotate and close buttons in ImageView (#9686 )
2019-05-15 21:14:20 -06:00
Aaron Raimist
c38b5cabb1
Allow the strings to be translated
...
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-05-15 22:11:51 -05:00
Aaron Raimist
bfd37d8089
Add tooltips to rotate and close buttons in ImageView ( #9686 )
...
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-05-15 22:06:02 -05:00
Bruno Windels
085f2d199d
focus editor after clicking edit
2019-05-15 17:17:35 +01:00
Bruno Windels
6366371c0d
add * to fallback messages for edits
2019-05-15 15:54:05 +01:00
Bruno Windels
5805a88ab9
adjust to js-sdk changes of marking original event as replaced
2019-05-15 11:54:26 +01:00
Bruno Windels
d83e278f6b
PR feedback, cleanup
2019-05-15 09:46:08 +01:00
Bruno Windels
dc21faa240
send edit also in n.new_content field
...
so we can have fallback content in the regular content for clients
that don't support edits. Note that we're not reading m.new_content
yet as it's going to be a bit of a headache to change this.
So for now just sending the edit in both the normal content and
the m.new_content subfield, so all events out there already
are well-formed
2019-05-14 16:32:08 +01:00
Bruno Windels
45991bc3de
replace original event if there have been previous edits
2019-05-14 15:39:24 +01:00
Bruno Windels
e2388afb51
consistent naming between serialize and deserialize modules
2019-05-14 15:39:24 +01:00
Bruno Windels
759a4a54ef
send the actual m.replace event from composer content
2019-05-14 15:38:16 +01:00
Bruno Windels
a3b02cf0cc
make logging quiet
2019-05-14 15:38:16 +01:00
Bruno Windels
4ff37ca046
don't show model for now
2019-05-14 15:38:16 +01:00
Bruno Windels
9e0816c51c
find caret offset and calculate editor text in same tree-walking algo
...
instead of having the same logic twice
2019-05-14 15:38:16 +01:00
Bruno Windels
7ebb6ce621
WIP commit, newlines sort of working
2019-05-14 15:38:16 +01:00
Bruno Windels
8d97c0033e
catch this for now as caret behaviour is still a bit flaky
2019-05-14 15:38:16 +01:00
Bruno Windels
64b171198c
rerender through callback instead of after modifying model
...
this way rendering is centralized and we can better rerender
from interaction in the autocompleter
(we didn't have access to caret before)
2019-05-14 15:38:16 +01:00
Bruno Windels
317e88bef2
initial hacky hookup of Autocomplete menu in MessageEditor
2019-05-14 15:38:16 +01:00
Bruno Windels
a2f1f49972
update the DOM manually as opposed through react rendering
...
react messes up the DOM sometimes because of, I assume, not
being aware of the changes to the real DOM by contenteditable.
2019-05-14 15:38:16 +01:00
Bruno Windels
6be6492cd2
initial parsing of pills for editor
2019-05-14 15:38:16 +01:00
Bruno Windels
76bb56a2bf
initial hookup editor code with react component
2019-05-14 15:38:16 +01:00
Bruno Windels
6599d605cd
wire up editor component (somewhat hacky)
2019-05-14 15:38:16 +01:00
J. Ryan Stinnett
26f732723e
Animate tooltips when hiding as well as showing
...
This uses the same animation style as on show, but twice as fast.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
aec14e64fa
Throttle validation in response to user input
...
This avoids the case of the password complexity progress jumping wildly for
every character you type.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
4f41161a47
Check password complexity during registration
...
This adds a password complexity rule during registration to require strong
passwords. This is based on the `zxcvbn` module that we already use for key
backup passphrases.
In addition, this also tweaks validation more generally to allow rules to be
async functions.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
008ca3543b
Migrate passwords on registration to new validation
...
In addition to migrating password fields, this also removes the remaining
support for old-style validation in registration now that all checks have been
converted.
2019-04-25 14:29:10 +01:00
J. Ryan Stinnett
9064875312
Migrate email on registration to new validation
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
1cbb4be6f7
Add support for validating more strictly at submit time
...
When submitting a form, we want to validate more strictly to check for empty
values that might be required. A separate mode is used since we want to ignore
this issue when visiting a field one by one to enter data.
As an example, we convert the pre-existing logic for the username requirement
using this new support.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
778697abf1
Use input element's value directly
...
Since we're keeping the input as a ref anyway, let's use that rather than
requiring the value to be passed to `validate`. This allows others to call
`validate` as well.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
5d95c31875
Focus the first invalid field
...
This adjusts the submission step to focus the first invalid field and redisplay
validation. This also rearranges the older style field error handling on
registration which is slated for removal once we convert all fields to the new
style.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
62a01e7a37
Track per-field validity with new-style validation
...
This updates the registration form to include the new-style validation state
when deciding whether the entire form is valid overall.
In addition, this tweaks the validation helper to take functions instead of
strings for translated text. This allows the validation helper to be create once
per component instead of once every render, which improves performance.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
37e09b5569
Add check and x icons for validation feedback
...
Adds icons from the Feather set with the same color as text. Tweaks validation
item spacing to match the design.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
87f13cfe55
Add focus handling to validation
...
Update the Field component and validation handling to show / hide validation
feedback on focus / blur events.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
338d83ab55
Add validation feedback helper
...
This adds a general validation feedback mechanism for checking input values. An
initial example is wired up for the username input on registration.
2019-04-25 14:29:09 +01:00
J. Ryan Stinnett
37ecf2a623
Remove unused ref from Field component
...
The `fieldInput` ref is no longer used now that we have controlled components
everywhere.
2019-04-25 14:29:09 +01:00