Page MenuHomePhabricator

Translate should not eat some tags inside message contents for AndroidFFS
Open, MediumPublic

Description

It seems to swallow HTML inside the messages, stripping them and their contents out. See message 'Commons-android-strings-about license' in the Android Commons app. Actual english content is 'Open Source software released under the <a href="https://github.com/wikimedia/android-commons/blob/master/COPYING">GNU GPLv2</a>' while content according to Extension:Translate is 'Open Source software released under the '

Details

Reference
bz47310

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 22 2014, 1:43 AM
bzimport set Reference to bz47310.
bzimport added a subscriber: Unknown Object (MLST).

Need to use the same hack what I used in XliffFFS for this. /me wishes innerXml functionality from Santa.

Is this something that's easily done, Niklas?

Just need suitable 15 min slot I think.

According to docs unescaped html is not allowed inside strings, except for b i and u tags.

Removing easy per my last comment. This is either wontfix or an implementation which only supports those three tags, or I misread the docs http://developer.android.com/guide/topics/resources/string-resource.html#FormattingAndStyling.

Yes, I was thinking of b i u tags; but we can instead align summary with comment 0 too.

You are misreading the docs. We are using those strings inside a webview - so we are actually making regular HTML out of them and putting them in. So no need to have it support only 3. You could make it a CData and add 'formatted=false' to fix any issues.

Ok, actually wrapping them in CData in the app fixes it.

Ok, wrapping them in CData fixes it for TWN, but not the app - the full HTML unparsed shows up as the text :(

I think, actual fix would be to just support <b>, <i>, <u> and <a> tags. (All of these are supported elements). Anything more complex would be used only in webviews, and CData can fix that.