Commit graph

2667 commits

Author SHA1 Message Date
Ed Sanders 7b2448d2f0 Use DOMCompat::getOuterHTML instead of doc->saveHTML()
The latter results in lots of extra HTML entity encoding.

The former is built by the Parsing team and appears to result
in no unexpected changes elsewhere in the document.

As Parsoid's selser relies on HTML fragments being byte-for-byte
equal, these changes were resulting in wikitext normalisations
in untouched parts of the document ("dirty diffs").

Bug: T259855
Change-Id: Ib3cb605911e690ec3e8c2f9df25fd1a2e2849d7e
2020-08-07 21:31:38 +02:00
Esanders c26ca107db Re-apply new reply API patches
This reverts commit 96953647c3.

* Re-apply "Edit API for replies"
  This applies commit 8829a1a412.
* Re-apply "Create a 'transcludedfrom' API endpoint"
  This applies commit 5d8f3b9051.
* Re-apply "Use transcluded from API to avoid ever fetching Parsoid DOM in client"
  This applies commit 9d0fc184fe.
* Re-apply "Restore error message for when comment is deleted while replying"
  This applies commit 655c0526d6.

Change-Id: Id20d21899f87464636022aa0683f8c03e0060117
2020-08-07 21:31:38 +02:00
Bartosz Dziewoński 96953647c3 Revert new reply API
Causes page corruption.

* Revert "Restore error message for when comment is deleted while replying"
  This reverts commit 655c0526d6.
* Revert "Use transcluded from API to avoid ever fetching Parsoid DOM in client"
  This reverts commit 9d0fc184fe.
* Revert "Create a 'transcludedfrom' API endpoint"
  This reverts commit 5d8f3b9051.
* Revert "Edit API for replies"
  This reverts commit 8829a1a412.

Bug: T259855
Change-Id: I98036f14dd900b51f20e98696e31b9b618eceee1
2020-08-07 18:18:21 +02:00
Bartosz Dziewoński e7115b8b27 ThreadItem: Fix "Notice: Undefined index: href"
Bug: T259856
Change-Id: I10b16b7d79dc88d7259b64c7d5d7e4cc6860d0fc
2020-08-07 17:41:41 +02:00
Translation updater bot 7f543a41f0 Localisation updates from https://translatewiki.net.
Change-Id: I858f39966910ac48c5b5a486701eb6cd3e4d6d2d
2020-08-07 08:22:52 +02:00
Translation updater bot d80c74709f Localisation updates from https://translatewiki.net.
Change-Id: Ideee0e557f633285042a233cf5148e85dda749f4
2020-08-06 08:27:41 +02:00
Bartosz Dziewoński 31b26a5bec Fix indentation level when replying to comments with mixed indentation
When adding a reply, we take a node at the end of the previous comment,
compare that comment's indentation level to the expected indentation level
of the reply, and add (or remove) that number of wrapper lists.

The existing code did not consider that comments may have lists within
them, and so the indentation of that node may not match the indentation
of the comment.

Bug: T252702
Change-Id: Icc5ff19783d2b213bff99f283cb0599a8b5c1ab4
2020-08-06 01:25:33 +02:00
jenkins-bot 76008ce943 Merge "Allow updating the expected results when running PHP tests" 2020-08-05 13:50:24 +00:00
Translation updater bot 77beb84aa7 Localisation updates from https://translatewiki.net.
Change-Id: Id2f6055d9293a56329173f6a9fa652a801dc7537
2020-08-05 08:22:26 +02:00
Bartosz Dziewoński a4ffdd37de Always use ':' (<dl><dd>) for indentation of replies
Previously we preferred that, but used '*' (<ul><li>) when the parent
comment or the previous reply also used it.

Bug: T252708
Change-Id: I3abf606da6693905764f1be745fad999fdf57fbe
2020-08-04 23:37:00 +02:00
Translation updater bot 33fef416f6 Localisation updates from https://translatewiki.net.
Change-Id: I69796064ef8ab79c215fc1a4ac97579b4507e011
2020-08-04 08:32:16 +02:00
Bartosz Dziewoński ccd9e411d2 Allow updating the expected results when running PHP tests
This is similar to the code we already have in JS tests, but instead
of printing to the console where you have to copy-paste from, it just
overwrites the files.

Also, update all of the expected results by this method.

Changes in the expected outputs:
* In JSON files, the "warnings" are now always in the same place
  regardless of the type of the warning.
* In all HTML files, self-closing tags now include the trailing slash,
  some characters are no longer encoded as entities when not necessary,
  and attributes may be single-quoted when that makes them shorter.
* In Parsoid HTML files, the header is no longer terribly mangled.

Other notes:
* CommentParserTest.php: Change the output of serializeComments()
  to be in similar order as in JS, to reduce the diffs in this commit
  and because it's a better order for humans.
* modifier.test.js: Remove some hacks that were working around small
  inconsistencies between the previous expected outputs and the actual
  outputs.

Change-Id: I9f764640dae823321c0ac35898fa4db03f1ca364
2020-08-04 03:05:28 +02:00
Translation updater bot d75b5a83b2 Localisation updates from https://translatewiki.net.
Change-Id: Id458bfe15adbbcd98b8d89c3cff212095e8ee907
2020-08-03 08:31:57 +02:00
Ed Sanders 3ea1a721be Swap toolbar and mode switcher
Bug: T257280
Change-Id: I436da21ea038ddf369f82c58756342b38d9b3b8a
2020-07-31 20:12:05 +00:00
jenkins-bot cc7ac90b97 Merge "Fix links to mediawiki.org to include www. prefix" 2020-07-31 20:09:09 +00:00
Ed Sanders 8b4ef23e44 Fix links to mediawiki.org to include www. prefix
This avoids an unnecessary redirect.

Change-Id: I5857fb08b4a4ae62ef35a9d87c321df7c82295a9
2020-07-31 17:52:24 +01:00
jenkins-bot 3e813316b0 Merge "Restore error message for when comment is deleted while replying" 2020-07-31 15:02:55 +00:00
Translation updater bot 709eab90df Localisation updates from https://translatewiki.net.
Change-Id: I9719fbb6db0e25809909e1dbaa59906d9ef38aa4
2020-07-31 08:45:47 +02:00
jenkins-bot 52845986c1 Merge "Log when editor switching is prevented" 2020-07-30 22:51:56 +00:00
jenkins-bot 34dd870e34 Merge "Add a test case for replies to top-level comments with mixed indentation" 2020-07-30 11:40:53 +00:00
Translation updater bot ba4dc5109f Localisation updates from https://translatewiki.net.
Change-Id: I418cc6d407505af9daebdca76555260164b459bb
2020-07-30 08:35:20 +02:00
Bartosz Dziewoński c8d06f6bd6 Add a test case for replies to top-level comments with mixed indentation
The bug was accidentally fixed in 569db3603c.

Bug: T252702
Change-Id: I0020ac41adcf111b8496d3d4bce65740faf9e7ef
2020-07-30 01:46:45 +02:00
jenkins-bot 8307eb5cb2 Merge "Do not auto-add "Mention a user" to "Insert" menu" 2020-07-29 14:59:24 +00:00
Translation updater bot 17e9fd4b1b Localisation updates from https://translatewiki.net.
Change-Id: Id76eff43f847f7db788de218b6727d509bc41c0a
2020-07-29 08:35:19 +02:00
Bartosz Dziewoński 655c0526d6 Restore error message for when comment is deleted while replying
Follow-up to 9d0fc184fe.

Change-Id: I4aea79259a25dbe85dc359edebedf9174ca9e0fc
2020-07-28 21:59:10 +02:00
Bartosz Dziewoński 80c58fe356 Do not auto-add "Mention a user" to "Insert" menu
Bug: T259039
Change-Id: I831b47d7a2192df3bc0c460eca9ef944661deb40
2020-07-28 21:42:33 +02:00
David Lynch 6cf2f9ac56 Log when editor switching is prevented
feature: editor-switch
action: dialog-prevent-table-show / dialog-prevent-template-show /
dialog-prevent-extension-show

Bug: T257501
Change-Id: Id0704c082d98504b84795c38a2f4ff372f8c51da
2020-07-28 12:19:36 -05:00
Translation updater bot a4862d24e0 Localisation updates from https://translatewiki.net.
Change-Id: I9ceea5a5c603b8eadbc06217da294bd0e4f75544
2020-07-28 08:24:29 +02:00
jenkins-bot 956039e7e2 Merge "Use transcluded from API to avoid ever fetching Parsoid DOM in client" 2020-07-27 23:56:15 +00:00
jenkins-bot 6033d4889f Merge "Create a 'transcludedfrom' API endpoint" 2020-07-27 23:56:13 +00:00
jenkins-bot 740e6eb174 Merge "Edit API for replies" 2020-07-27 23:56:10 +00:00
Ed Sanders 9d0fc184fe Use transcluded from API to avoid ever fetching Parsoid DOM in client
Bug: T252558
Depends-On: I015ac183a0c25dafb9b95c577edd4ef59c112d43
Change-Id: I6090c99429bf6eceb57870e3d449de6754063353
2020-07-28 00:50:15 +02:00
Ed Sanders 5d8f3b9051 Create a 'transcludedfrom' API endpoint
Bug: T252558
Change-Id: I2220f26dc2b744f03feeee9124f6936858dda3eb
2020-07-27 21:20:01 +01:00
Ed Sanders 8829a1a412 Edit API for replies
Bug: T252558
Change-Id: Iac43b5bb0315ceaad7698fb2b708b7c3cde403f8
2020-07-27 21:19:58 +01:00
Translation updater bot c11932c949 Localisation updates from https://translatewiki.net.
Change-Id: I35ba2916610292e7aa38dbba761c5a8fde61392e
2020-07-27 08:37:13 +02:00
jenkins-bot 377a1159ae Merge "Add ime-position-inside ULS class to reply widgets" 2020-07-24 22:50:45 +00:00
Translation updater bot f713d868b1 Localisation updates from https://translatewiki.net.
Change-Id: Ice050277e1fd95def7a452113e7a8d7b1cb67c63
2020-07-24 08:26:36 +02:00
jenkins-bot 02e8901a6d Merge "Tweak wording of the visual mode signature hint" 2020-07-23 16:45:38 +00:00
jenkins-bot 12ddb69c9e Merge "Better handle HTML comments following replies" 2020-07-23 16:45:36 +00:00
jenkins-bot ced2b24daf Merge "Make getNativeRange a method of ThreadItem" 2020-07-23 16:29:57 +00:00
Bartosz Dziewoński 31e371e944 Better handle HTML comments following replies
Bug: T257651
Change-Id: I07e995beca4f031be062958ff7d75727afa8e606
2020-07-23 18:18:21 +02:00
Translation updater bot 8a85b7f598 Localisation updates from https://translatewiki.net.
Change-Id: I6ba51157040e34350f247f9ee8153a3afe978ef0
2020-07-23 08:27:45 +02:00
Ed Sanders 0dbda50781 Make getNativeRange a method of ThreadItem
Change-Id: Icdf9e4560ca6116f35fecf034a4e059dc7ed893e
2020-07-22 21:56:48 +01:00
Bartosz Dziewoński 3d69704b05 Tweak wording of the visual mode signature hint
Bug: T255738
Change-Id: I30166da358a9eb57bb834b2161505f9ab9c24eea
2020-07-22 20:15:44 +02:00
jenkins-bot 765a1d27bc Merge "Improve detecting template-generated multi-line comments" 2020-07-22 15:04:00 +00:00
Translation updater bot 259c493f69 Localisation updates from https://translatewiki.net.
Change-Id: Icf9e658ce76bf27cde9e994ddd42a4bd43bb9250
2020-07-22 08:26:20 +02:00
jenkins-bot 889de1bcdf Merge "Improve detecting typed signatures" 2020-07-22 01:43:40 +00:00
jenkins-bot 7eff952cb2 Merge "Signature handling in visual mode" 2020-07-22 01:42:47 +00:00
jenkins-bot 3db53080e8 Merge "Don't allow switching when unsupported content used" 2020-07-21 23:14:08 +00:00
Bartosz Dziewoński 80e52e1155 Improve detecting typed signatures
* Remove the existing approach for detecting signatures that only
  worked in source mode; remove autoSignWikitext()

* Use the same approach for auto-signing in source mode as we have
  already used in visual

* In both modes, detect whether the user has already typed a signature
  at the end of their comment in the modifier, and if so, don't add a
  signature

* Add test cases for the detection

Bug: T255738
Change-Id: I791d3035cb1ffc33ce3966d4617a25d08700c35b
2020-07-22 00:00:53 +02:00