Page MenuHomePhabricator

Expand toggles in message documentation are inactive when linking to a message directly
Closed, ResolvedPublicBUG REPORT

Description

Steps to Reproduce:

Actual Results:

  • The boxes are closed and cannot be opened (the toggles are inactive).

Expected Results:

  • The box toggles work.

Details:
Issuing

mw.hook('wikipage.content').fire($('.message-desc'));

on the browser console fixes the problem; something like this should be added in the extension’s JS.

Additional note: This seems to happen only when linking to a message directly and not when traversing via the translation list.

Event Timeline

Restricted Application added subscribers: Liuxinyu970226, Aklapper. · View Herald TranscriptMar 22 2020, 5:39 PM
abi_ renamed this task from `wikipage.content` JavaScript hook not fired for TUX documentation to Expand toggles in message documentation are inactive when linking to a message directly.Mar 23 2020, 4:13 AM
abi_ updated the task description. (Show Details)
abi_ added a subscriber: abi_.
resources/js/ext.translate.editor.helpers.js
74:                                     // A collapsible element may have been added
75-                                     $( '.mw-identical-title' ).makeCollapsible();

Maybe this needs to be replaced with the hook? And figure out why it isn't always working.

Tacsipacsi updated the task description. (Show Details)Mar 23 2020, 11:19 PM

Sorry, I didn’t check every situation. After some more testing (and using the source look), it’s obvious what happens: {{Identical}} works, because it has mw-identical-title class, but {{Related}} doesn’t (in no case, regardless of how the user got there), because its class is mw-related-title. I think relying on on-wiki classes or any other user-generated content is a Very Bad Thing, and should be avoided if possible. (For example it at least partly works on translatewiki, but doesn’t work at all on WMF wikis.) Here it seems possible with the MediaWiki hook, to which $messageDesc from line 63 can be passed. (I haven’t tested it on a local MediaWiki install, only using the browser console on translatewiki and Commons, where I used $messageDesc = $( '.infocolumn-block .message-desc' ). It’s not the same, but pretty similar, so I think it should work with the code in the extension’s module as well.)

Change 583039 had a related patch set uploaded (by Nikerabbit; owner: Nikerabbit):
[mediawiki/extensions/Translate@master] TUX: Use mw.hook( 'wikipage.content' ) for message documentation

https://gerrit.wikimedia.org/r/583039

Nikerabbit triaged this task as Low priority.

Change 583039 merged by jenkins-bot:
[mediawiki/extensions/Translate@master] TUX: Use mw.hook( 'wikipage.content' ) for message documentation

https://gerrit.wikimedia.org/r/583039

abi_ removed a project: Patch-For-Review.

Related patch has been merged.

This has been deployed to translatewiki.net and can be tested there.

For example, here on the yellow background color is [expand these messages] link generated by Template:Identical, which should always work after this fix.

Simlarly for Template:Related, on blue background:

Jpita closed this task as Resolved.Apr 2 2020, 9:35 AM
Jpita moved this task from Needs QA to Done on the Language-Team (Language-2020-Focus-Sprint) board.