Commit graph

3036 commits

Author SHA1 Message Date
Bartosz Dziewoński adc64b3002 ve.ui.MWCitationDialog: Unbreak the logic to enable/disable actions
This code was written in 2014 and it seems that some change to
ve.ui.MWTemplateDialog since then made it not work. No idea why or
when it broke. But we can implement the functionality much more easily
now by overriding #setApplicableStatus, which works correctly.

Bug: T210796
Change-Id: I6e87ca979a96785fc74f1a57f7d80ba4b43705f2
2018-11-29 22:39:55 +00:00
Bartosz Dziewoński b7bdcaeccc ve.ui.MWCitationDialog: Remove unneeded code re-setting insert label
This sets the label to be the same as the default value inherited from
ve.ui.MWTemplateDialog. Looks like it's no longer needed since change
Ia8fb88d3501ffa2c26add4419da5463a926f45d1 in VE-MW (2014).

Change-Id: Icd64d22aef29a3791352e1839993ea8462a147f3
2018-11-29 23:09:23 +01:00
Translation updater bot c31c93f619 Localisation updates from https://translatewiki.net.
Change-Id: I58dfd99dd04e0d78298df7ad51286ba252019142
2018-11-29 22:26:44 +01:00
Bartosz Dziewoński 7f6ae77b3c ve.ui.MWCitationDialog: Fix condition for enabling insert/apply action
The method #hasUsefulParameter has been accidentally made to always
return false in fdde5b71af.

Bug: T210686
Change-Id: I215924c2f693842abd8026404d17c725192272c3
2018-11-29 04:02:44 +00:00
James D. Forrester 57aeb852ae eslint: Drop 'dot-notation' rule
Bug: T210552
Change-Id: Ia6bacf9aacd0167317cbd7d8348be1c2005b6562
2018-11-28 10:27:44 -08:00
Thiemo Kreuz 4152c6cdf4 Make backlink highlighting robust when "mw-cite-backlink" is missing
The class="mw-cite-backlink" is part of a message. It should be
considered code and not be customized, but can be. Frwiki for example
localized it.

The new code still hopes to find the class, and still hopes the first
child is the text node containing the plain text up arrow. (See the
message "cite_references_link_many" which contains all this.) This code
path is kept because it is more performant.

If the class is not found, the upwards traversal done via .closest()
stops at the <li>. It then traverses down into the firstChild nodes,
hoping to find the plain text up arrow this way.

This patch makes the code work with the customizations found in frwiki.

Bug: T205270
Bug: T210508
Change-Id: I32552ebe820ee12aea1a75aa17af11298dc7536a
2018-11-28 12:35:05 +01:00
jenkins-bot c88275c8d5 Merge "Make backlink highlighting robust for community customized HTML" 2018-11-28 11:34:32 +00:00
Thiemo Kreuz d7c1943b04 Make backlink highlighting robust for community customized HTML
This change makes the code much, much more robust. See, almost all HTML
relevant for this feature is encoded in messages. This allows unexpected
customizations that add additional HTML elements, change the order of DOM
elements, even remove class names and elements.

The <ol class="references"> is the only HTML snippet generated via code,
guaranteed to be there, and used as an entry point because of this.

Instead of the selector utilizing a "*" to detect references with "one"
vs. "many" backlinks, we check if a second backlink exists.

The .first() copies the browsers behavior to only respect the first anchor
in case an id="…" appears multiple times on a page.

The additional .length check further down is a missing sanity check,
currently relevant on frwiki where the expected class="mw-cite-backlink"
got localized.

Bug: T205270
Bug: T210520
Change-Id: Iba9aebfd01508b283933964cfb986d7239d4cf38
2018-11-28 11:56:27 +01:00
Ed Sanders fdde5b71af Update eslint-config-wikimedia to 0.9.0
Change-Id: I7883af1f56c7f2f3eeff1f7a51b640a303bcab78
2018-11-27 22:23:57 +00:00
Translation updater bot 8991801975 Localisation updates from https://translatewiki.net.
Change-Id: If5195d61ed2642c4182de62f4ef12bc8b33a893c
2018-11-27 22:14:30 +01:00
WMDE-Fisch 6dda36a1e7 Improve a11y support on backlinks
This changes the a11y support on the main backlinks by introducing the usage
of title and aria-labels. The support for these elements increased a lot since
the topic was first tackled and seems the appropriate way to go.

A new message was introduced for the link that will be set when directly
coming from a clicked refrence to emphasize that the can jump back to where
he came from.

Bug: T206323
Change-Id: Ifa56d41bcdb8100e19f29619796b62bb3c886d2f
2018-11-26 11:36:26 +01:00
Translation updater bot 0f3961df4e Localisation updates from https://translatewiki.net.
Change-Id: I703db0a48870ec600f2596bef7538b27f12ee569
2018-11-25 22:33:45 +01:00
Thiemo Kreuz (WMDE) 8760fe5e62 Rearrange Cite::listToText for performance
The two message are not needed in case there is only one element.
Since fetching messages is a little expensive, I feel it's worth
rearranging this code.

Or not, because it seems this method is never called with one
element only.

Change-Id: Ie915278b41f053afe0d14a29d2aec54c98e5185e
2018-11-21 18:16:55 +00:00
jenkins-bot 1fe6947693 Merge "Use \d shortcut in regular expressions" 2018-11-21 18:13:00 +00:00
jenkins-bot 7c7f258aac Merge "Remove unused parameter from two private Cite functions" 2018-11-21 18:03:30 +00:00
Thiemo Kreuz (WMDE) 436453e758 Use \d shortcut in regular expressions
This does not change anything, but is only for readability.

Change-Id: I7970df426246c16f5418665c9af069c13e0b9933
2018-11-21 17:59:42 +00:00
jenkins-bot ea5c84fdaf Merge "Use more specific type hints in PHPDoc tags" 2018-11-21 17:44:55 +00:00
Thiemo Kreuz (WMDE) 7c06347fc7 Simplify weirdly complex [\n\t ] regex
This change does have two consequences:

1. A few more whitespace characters act as separators. This should not
have any consequence in real life situations, and is mainly done to
make the code easier to read and less surprising.

2. Sequences of two or more whitespace characters previously resulted
in partly *empty* results. This was a potential source of errors. The
additional + fixes this.

Change-Id: Ib58326109c740dd0cbd05d8fddb4af2145f232fe
2018-11-21 17:33:25 +00:00
Thiemo Kreuz (WMDE) 0f76d79169 Use more specific type hints in PHPDoc tags
Change-Id: Ib0cf532fa51ddce135914edf357638a0862a200f
2018-11-21 18:19:25 +01:00
jenkins-bot 1bc1d1e075 Merge "Prefer "=== null" for consistency and readability" 2018-11-21 02:41:18 +00:00
jenkins-bot fd956ab507 Merge "ve.ui.MWReferencesListDialog: Disable 'Apply' button until changes are made" 2018-11-20 15:54:57 +00:00
jenkins-bot 7d7a38ad8f Merge "Add browser tests for linking the main backlink" 2018-11-20 14:41:17 +00:00
jenkins-bot 222b9ca593 Merge "Make arrows/carets links whenever we know where the user came from" 2018-11-20 12:42:21 +00:00
WMDE-Fisch 89deb7ca4c Add browser tests for linking the main backlink
This also includes putting the backling tests in their
own file due to the common setup needed.

Bug: T205271
Change-Id: Ica98c31bf0fddde9eb80f9c53b3dc089cb60e30c
2018-11-20 13:21:30 +01:00
Thiemo Kreuz (WMDE) 2b34dede6c Sanitize underscores as core does, to not create broken links
Core sanitizes link targets and removes double spaces and underscores.
But the corresponding id="…" attributes are not sanitized the same
way. This results in broken links. This patch is not perfect (two
references with name="a_b" and name="a__b" will conflict), but the
best solution I can think of at the moment.

Bug: T184912
Change-Id: I9dbc916ad99269517d84c8ffb8581628d44a9f4e
2018-11-20 13:07:35 +01:00
Thiemo Kreuz (WMDE) 30c6323e82 Prefer "=== null" for consistency and readability
Change-Id: I59a7d072ec859f59ff6692d7fa79708ec184322e
2018-11-20 11:48:19 +01:00
jenkins-bot 18a53d7666 Merge "Localisation updates from https://translatewiki.net." 2018-11-19 22:23:55 +00:00
Translation updater bot 2cf53b996b Localisation updates from https://translatewiki.net.
Change-Id: If314a6b7ad16b2470688cc32ced4a5560b773cbc
2018-11-19 22:11:05 +01:00
jenkins-bot e728ef92f8 Merge "Add browser test for highlighting of jump mark symbols" 2018-11-19 17:37:15 +00:00
jenkins-bot 7b18946a8b Merge "Add first browser test" 2018-11-19 17:37:14 +00:00
Thiemo Kreuz (WMDE) 2b3a62c26b Make arrows/carets links whenever we know where the user came from
I tried to arrange the new code in a way that it is compact, but still
readable. I think it's possible to arrange it even better, but browser
tests should be added first, in my opinion.

Bug: T205271
Change-Id: I1d579ef9d2787fc43c0a8bbf61c583f602dca5d4
2018-11-19 16:27:59 +00:00
jenkins-bot 8b97f74dc9 Merge "Highlight backreference jump marks by making them bold" 2018-11-19 16:24:24 +00:00
WMDE-Fisch 9c4620966f Add browser test for highlighting of jump mark symbols
Bug: T205270
Change-Id: Ieccf2c507dafac70d287eb0fa0fff051442205da
2018-11-19 16:08:49 +00:00
Andrew Kostka 626d9d4188 Add first browser test
This adds a test which checks if the extension appears on the
Special:Version page.

This is an initial step for adding more browser tests to check
changes done in I26fe41c328157233cc5b06d38d2ba0f7b036a853

Change-Id: I9a9d1cd2a25277f2c430f4e80b51b72c1621f91b
2018-11-19 16:08:42 +00:00
Thiemo Kreuz ee8da566e3 Highlight backreference jump marks by making them bold
The separate "ext.cite.a11y" module is kept for (temporary)
compatibility with cached HTML, and should be removed in about
a month.

Browser tests will be added in a separate patch.

Bug: T205270
Change-Id: I26fe41c328157233cc5b06d38d2ba0f7b036a853
2018-11-19 16:46:08 +01:00
Thiemo Kreuz (WMDE) a8da30d4fd Remove unused parameter from two private Cite functions
The iodea is to make the code simpler and easier to read. If no
code uses this feature, all it does is making the code unnecessary
complex.

Change-Id: I22747712a691443a29b57831d3a6926275ad986b
2018-11-19 16:28:24 +01:00
Translation updater bot 7ecdec713d Localisation updates from https://translatewiki.net.
Change-Id: I9cf5306d453310e154c2f49df23f1be6348200de
2018-11-18 22:48:21 +01:00
Translation updater bot 9deb4d476e Localisation updates from https://translatewiki.net.
Change-Id: Icd283ec309f0f89624a49eecf1b241396b36e24f
2018-11-17 22:19:38 +01:00
Bartosz Dziewoński fd19cd76c1 ve.ui.MWReferencesListDialog: Disable 'Apply' button until changes are made
Bug: T209660
Change-Id: I2c998cce812b63d1f5656ba38470a77ac5a0fd45
2018-11-16 00:49:08 +01:00
libraryupgrader 8cac9f4aee build: Updating mediawiki/mediawiki-codesniffer to 23.0.0
Change-Id: Ie7785a40557446e40db079b147610ba29b135ba4
2018-11-14 08:53:25 +00:00
Ed Sanders e0781b0c58 Fix typo in documentation
Change-Id: I25407db3025dace825afd0ca083eba4fc600955d
2018-11-13 23:42:35 +00:00
jenkins-bot 82c75661ee Merge "Remove obsolete aliases from closures" 2018-11-13 22:59:20 +00:00
Ed Sanders a589dbe636 Remove obsolete aliases from closures
Bug: T208951
Change-Id: Idd6bc36b116af81827b4440b4c8ec3da94e1486f
2018-11-13 14:43:45 -08:00
Translation updater bot 664b178c3d Localisation updates from https://translatewiki.net.
Change-Id: I6aae842e9a5d4a8a036ed6107222e9bc84ac57b9
2018-11-12 22:12:39 +01:00
Translation updater bot e61ab2c8f6 Localisation updates from https://translatewiki.net.
Change-Id: Iade9e083c123e608dfac57f8e27f4fbbf65e9932
2018-11-11 22:33:37 +01:00
Translation updater bot a9ae168208 Localisation updates from https://translatewiki.net.
Change-Id: Ib3be93269095ae9b86e407aab89d353b5530b56b
2018-11-10 22:28:03 +01:00
Translation updater bot 86bf110048 Localisation updates from https://translatewiki.net.
Change-Id: I0d4260c2bd9121a41ad9598f57edb6001748e186
2018-11-07 22:21:58 +01:00
Bartosz Dziewoński ec55fa3ce8 Use changed ve.dm.Selection interface
Bug: T208228
Bug: T208913
Change-Id: Ifb1a77a5f07b9e257c6e0477e23316f80c7a4791
2018-11-07 16:51:51 +01:00
Translation updater bot 774e301300 Localisation updates from https://translatewiki.net.
Change-Id: Ia5f2da9fb4166a5c53f681705ece9591b99f4b9c
2018-11-04 22:42:03 +01:00
Translation updater bot 5e9add6454 Localisation updates from https://translatewiki.net.
Change-Id: Ic2dc4045f2baa1467329bd4619f59e846a5118c4
2018-11-03 11:02:43 +01:00