Commit graph

1237 commits

Author SHA1 Message Date
Bartosz Dziewoński 58c078437d Improve mode selector keyboard interactions
When there are just two modes, using arrow keys to switch between
them is not intuitive. The focus moving from the selector to the
body widget afterwards is even less intuitive.

Override default TabOptionWidget to allow options to be highlightable
(not just immediately selectable), and mark the current mode's tab as
disabled instead of selected (but make it look selected).

This results in intuitive keyboard interactions (tabbing to the widget
highlights the other tab rather than the current one, pressing enter
switches to it).

Bug: T274423
Change-Id: I9d358d5f301cbf081380ef5d34ccc8c4e146652e
2021-03-18 15:15:40 +01:00
Bartosz Dziewoński 1dbe907011 Ensure ReplyWidgetVisual#getMode always returns a mode
In some situations we didn't pass the mode in the config.

Simplify some redundant code that got messed up when we
introduced the NWE source mode.

Change-Id: Ia838fc6752d411f70c8cc6a36d84d2a851fd68bd
2021-03-18 15:15:40 +01:00
jenkins-bot fcff49e15d Merge "Change dt- class prefix to ext-discussiontools-" 2021-03-15 16:51:48 +00:00
Translation updater bot de3c74e478 Localisation updates from https://translatewiki.net.
Change-Id: Ibff565f3d4980c4e289146fde14a610483705ee6
2021-03-15 08:40:19 +01:00
Ed Sanders ece8ff69ff Change dt- class prefix to ext-discussiontools-
Longer, but follows the style guide and less likely to conflict.

We need to account for init classes in the cache being around for
a while.

Change-Id: I738bc93393850db320fdbda2b003ca8ac40556da
2021-03-13 14:42:39 +00:00
libraryupgrader 1fca3fbd5c build: Updating eslint-config-wikimedia to 0.19.0
Additional changes:
* eslint: Renamed `wikimedia/client` profile to `client-es5` (T277085).

Change-Id: I67378fec29920bc3208b723c2e118b45abf6558a
2021-03-13 10:51:31 +00:00
Translation updater bot 2a0611a2b9 Localisation updates from https://translatewiki.net.
Change-Id: I38a92d74416aca58c145824b58782c496a2e50e3
2021-03-12 08:45:39 +01:00
Translation updater bot b24ec3be2b Localisation updates from https://translatewiki.net.
Change-Id: I09646fad4c1a3736a5e3755f058ddda07105b860
2021-03-11 08:37:03 +01:00
Translation updater bot d5b33021fb Localisation updates from https://translatewiki.net.
Change-Id: I7f2cda683e51a35243f5722e99eeeed5bcab53df
2021-03-10 08:31:55 +01:00
jenkins-bot 72f1ff092f Merge "Allow users to continue using reply tool after disabling A/B test" 2021-03-10 06:40:58 +00:00
Bartosz Dziewoński 68ad48f56f Allow users to continue using reply tool after disabling A/B test
Bug: T276967
Change-Id: I1fa120ded9ac3673fd3e5005618b3312ffd0aaf5
2021-03-09 22:20:03 +01:00
Bartosz Dziewoński 1a52f06daf Tweak signature formatting in previews for more accurate results
When posting a new topic, if your comment ends with a template
that has trailing line breaks, the signature will be added as a
preformatted text (which is arguably a bug: T255741).

Preview, however, did not reflect this bug, because of the <span>
markup added to fade out the automatic signature.

Change-Id: I062b01a035e22edfca752a49c5e2433b3f7fb4f6
2021-03-09 01:08:59 +01:00
Bartosz Dziewoński 44f2209abf Trim signatures when added in an empty existing node, too
Add unit tests for appendSignature().

Bug: T276612
Change-Id: Ic44c52f4d54492e092f9396c626380e2637b6f0f
2021-03-08 23:38:46 +00:00
jenkins-bot c33a7c45fe Merge "Add 'href' to reply links for better compatibility with skins" 2021-03-08 23:15:47 +00:00
jenkins-bot aab0c47caf Merge "Tracking changes from VE source mode" 2021-03-08 23:15:44 +00:00
Ed Sanders ccc19d8df2 Add 'href' to reply links for better compatibility with skins
Change-Id: Id948d576bbe5a6d43c4f8a06cdb2cd8ad19be193
2021-03-09 00:04:53 +01:00
jenkins-bot 0ca278455e Merge "CommentFormatterTest: Avoid re-serializing the HTML" 2021-03-08 21:47:53 +00:00
Ed Sanders 5324e60e84 Tracking changes from VE source mode
Change-Id: I5cafa7a21a0ab90fab9d09e44b7525ee07f56709
2021-03-08 21:13:10 +00:00
Translation updater bot 86c6d459ee Localisation updates from https://translatewiki.net.
Change-Id: Ie77d419a0bb78404654c94a3c6b0b189a2093ba6
2021-03-08 08:46:09 +01:00
jenkins-bot 42b70dff1c Merge "Always load init CSS when tools are available for a title" 2021-03-06 18:51:46 +00:00
libraryupgrader c2d4515819 build: Updating eslint-config-wikimedia to 0.18.2
Change-Id: I4fb61bad6cfb8e06270d9e9da7e373823e70624d
2021-03-06 13:45:27 +00:00
Ed Sanders 6224c11ff1 Always load init CSS when tools are available for a title
Also, make init CSS available on mobile.

Bug: T274311
Change-Id: I8f63fdb249cdd8ccdc6d1c4944d2622ac7d668cc
2021-03-06 12:08:50 +00:00
Translation updater bot 9403fb961c Localisation updates from https://translatewiki.net.
Change-Id: I5fa2ce3ae26d316d5cf45c7b304575369d82bc9f
2021-03-05 08:55:34 +01:00
jenkins-bot 17a3657b6a Merge "Follow-up I60e550ef: Don't show relevant user in mention list if it is you" 2021-03-04 22:09:57 +00:00
Ed Sanders 45cda20cf3 Don't attempt to put comment markers in <noscript> tags
Bug: T276455
Change-Id: Ia427d97528b137111145ac79680972a660f28e37
2021-03-04 22:24:04 +01:00
Ed Sanders 998bd206ae Follow-up I60e550ef: Don't show relevant user in mention list if it is you
We have logic above to exclude mentioning yourself, but this
is overridden if you are commenting on your own talk page.

Change-Id: I2858c79bd9f1cb733f105825e17f9df75859e40a
2021-03-04 20:59:00 +00:00
Ed Sanders f296c6fdd9 build: Move eslint file list to .eslintignore
Change-Id: Ib7eebf181d3324936bd355aeea540822093d2849
2021-03-04 18:09:34 +00:00
Translation updater bot b7fdecb817 Localisation updates from https://translatewiki.net.
Change-Id: I3ab1573b2eadaf607debdbb958fa09f9588b18a9
2021-03-04 08:38:00 +01:00
jenkins-bot 3dc27a73b0 Merge "Don't detect comments within 'cite' elements too" 2021-03-02 23:50:14 +00:00
Translation updater bot 1954267e70 Localisation updates from https://translatewiki.net.
Change-Id: I734ad27ab70c80278f0b2074113bd2daa0237503
2021-03-02 08:49:19 +01:00
Bartosz Dziewoński f5059e6ea6 Don't detect comments within 'cite' elements too
Follow-up to 024a978ffd.

Bug: T275881
Change-Id: I53448ad22cd0531e7fd4aa0ea5d15782879cce14
2021-03-01 21:40:43 +01:00
jenkins-bot 78260b97fe Merge "Ensure most of the widget doesn't move when blur-validating" 2021-03-01 20:39:06 +00:00
Bartosz Dziewoński 5a07139249 CommentFormatterTest: Avoid re-serializing the HTML
The code we're testing already produces a string of serialized HTML,
no need to parse and re-serialize it.

Also, we recently learned that the precise format matters here
(T274709), and now this test *actually* covers the fix for that bug.
Follow-up to 5b26e9664b.

As a downside, this test might now spuriously fail if the format of
the output of Parsoid's XMLSerializer changes. Hopefully that won't
happen too often.

Change-Id: I69b514f545e47dcb437fb39a83edb8e2f19ed99b
2021-03-01 21:30:28 +01:00
jenkins-bot 6650eb56cd Merge "Fix toolbar dialog placement" 2021-03-01 19:59:39 +00:00
jenkins-bot f1d5a75f84 Merge "Pass replyWidget to target" 2021-03-01 19:59:38 +00:00
Translation updater bot 2f635dc06c Localisation updates from https://translatewiki.net.
Change-Id: I0cf1d2a0b24bb924854a611b9dec9c91b03936d5
2021-03-01 08:51:26 +01:00
jenkins-bot 0eb37a87df Merge "Don't detect comments within quotes" 2021-02-28 22:56:20 +00:00
Bartosz Dziewoński 024a978ffd Don't detect comments within quotes
Bug: T275881
Change-Id: I8f7a4279837bd95ebf5b604ff350c0a3f29c2c05
2021-02-28 22:49:48 +00:00
Ed Sanders 665f68f838 Fix toolbar dialog placement
There are no available tools that use this, but it
can be tested using:

ve.init.target.surface.executeCommand('specialCharacter')

Change-Id: I853e6a3b9bd3caff018b6fe22cea9b1c6a428dff
2021-02-28 22:18:58 +00:00
Ed Sanders f5c3da2a86 Pass replyWidget to target
This allows the target to access $headerWrapper directly
instead of using flaky DOM traversal.

Change-Id: I81f6616ea8fa7cbfb58e576fd5b2739c6158a216
2021-02-28 22:07:51 +00:00
Ed Sanders c04a4c5c8f Ensure most of the widget doesn't move when blur-validating
This ensures click events are interrupted on other controls.

Bug: T275923
Change-Id: Ib73d17a965f1fb7e2bc4870bdbb568a9f6d071d3
2021-02-28 15:00:12 +00:00
jenkins-bot 8bb5eea999 Merge "Improve signature detection to handle formatting on the timestamp" 2021-02-27 22:54:50 +00:00
jenkins-bot c5874422df Merge "CommentUtils: Fix edge case bug in getCoveredSiblings()" 2021-02-27 22:54:46 +00:00
jenkins-bot 49938a88dc Merge "Improve merging multiple comments on one paragraph" 2021-02-27 22:54:43 +00:00
jenkins-bot 4fa3a5cb74 Merge "Broken test cases for comments with double signatures" 2021-02-27 22:54:41 +00:00
jenkins-bot 782884a6a1 Merge "Fix wikitext command registry inheritance" 2021-02-27 19:09:12 +00:00
Ed Sanders f62ce55671 Fix wikitext command registry inheritance
This fixes some missing commands in source mode, such as undo.

Change-Id: Ie470bd351e2fd67bcbb8cc839e70c3efcaaf1564
2021-02-27 18:24:36 +00:00
Daimona Eaytoy 67096cb431 Stop using deprecated Language methods
Change-Id: I7cf21365df355a4a62f9e353be61aaa03ed58b9d
2021-02-27 14:48:49 +00:00
Bartosz Dziewoński efe95494a8 Improve signature detection to handle formatting on the timestamp
Now it detect signatures generated by en.wp's {{Undated}} template,
and signatures of people who do weird stuff to the timestamps.

Bug: T275938
Change-Id: I27b07f6786ca5433a3c02a5fe68e4716d41401bb
2021-02-27 02:33:30 +01:00
Bartosz Dziewoński e767ee1741 CommentUtils: Fix edge case bug in getCoveredSiblings()
In some cases it would return the parent node, instead of the siblings
it should return.

It's a private method only called by getFullyCoveredSiblings(), and
that method had a bug that cancelled out this one, so everything
worked correctly. But I want to use it elsewhere now and ran into it.

Change-Id: Ic12f007d57a8502a1bea5f0af17b29e9d59093d6
2021-02-27 02:26:42 +01:00