Bruno Windels
ca2e6d8eb2
Message editing: shift+enter for newline, enter to send
2019-05-17 10:22:02 +01:00
Travis Ralston
0c7aa39273
Merge branch 'develop' into travis/feature/wellknown2
2019-05-16 12:59:50 -06: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
Travis Ralston
25e3f7888e
newline for the linter
2019-05-13 18:31:43 -06:00
Travis Ralston
e4576dac28
Render underlines and tooltips on custom server names in auth pages
...
See https://github.com/vector-im/riot-web/issues/9290
2019-05-13 17:16:40 -06: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
J. Ryan Stinnett
12f7d1715b
Remove BottomLeftMenu and supporting bits
...
The `BottomLeftMenu` component is not used in the new design. This removes the
component and also any images and sub-components that were only used by it.
2019-04-09 17:38:32 +01:00
J. Ryan Stinnett
f2da833ac9
Fix validation to avoid undefined class on fields
...
The class name handling for validation inadvertently added `undefined` as a
class when validation is not used. This rearranges the logic to avoid the issue.
Fixes https://github.com/vector-im/riot-web/issues/9345
2019-04-09 16:10:36 +01:00
Travis Ralston
a61ab4eb4e
Merge pull request #2862 from matrix-org/travis/stickerpicker/remount
...
Don't re-init the stickerpicker unless something actually changes
2019-04-04 09:46:38 -06:00
Travis Ralston
9618187d2e
Merge pull request #2855 from YaoiFangirl420/rotate_images
...
Add option to rotate images
2019-04-04 09:46:06 -06:00
Travis Ralston
6722451207
semicolon
2019-04-04 09:36:45 -06:00
J. Ryan Stinnett
b0f59007f3
Clarify level variable name
2019-04-04 10:30:23 +01:00
YaoiFangirl420
1cbbe5f31f
Add i18n and fix method declaration
...
Add i18n entries for rotating images; fix the way `getName` is defined
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com >
2019-04-04 02:27:58 -07:00
YaoiFangirl420
9bd1ba60f5
Add option to rotate images
...
cf. https://github.com/vector-im/riot-web/issues/9257
Add rotate clockwise/counterclockwise buttons to <ImageView>
Signed-off-by: YaoiFangirl420 <48789208+YaoiFangirl420@users.noreply.github.com >
2019-04-04 01:48:41 -07:00