Localizability issue in new onboarding string (manage preferences)
Categories
(Fenix :: Experimentation and Telemetry, defect)
Tracking
(firefox133 unaffected, firefox134 unaffected, firefox135 affected)
Tracking | Status | |
---|---|---|
firefox133 | --- | unaffected |
firefox134 | --- | unaffected |
firefox135 | --- | affected |
People
(Reporter: flod, Assigned: amejia)
References
(Regression)
Details
(Keywords: regression)
Attachments
(1 file)
Bug 1933253 introduced new strings for onboarding. Among them, the *link_text
string is used to linkify part of the full message.
<!-- Terms of service onboarding page line three text. 'Firefox' intentionally hardcoded here-->
<string name="onboarding_term_of_service_line_three" tools:ignore="UnusedResources,BrandUsage">To help improve the browser, Firefox sends diagnostic and interaction data to Mozilla. Manage</string>
<!-- Terms of service onboarding page line three text which should be displayed as a link-->
<string name="onboarding_term_of_service_line_three_link_text" tools:ignore="UnusedResources,BrandUsage">Manage</string>
As explained in a previous bug (bug 1809972), this is not a reliable approach for localized content, even with a clear comment. Localizers translate one string at a time, there is no way to enforce that Manage
will match in both strings.
Arturo pointed out that the replacement happens here.
Can the code be changed to have a placeable instead of actual text? Note also the comments
<!-- %S is replaced by an active link, using onboarding_term_of_service_line_one_link_text as text (“Terms of Service”). -->
<string name="onboarding_term_of_service_line_one" tools:ignore="UnusedResources,BrandUsage">By continuing, you agree to the Firefox %S.</string>
<!-- Used as text for the link in onboarding_term_of_service_line_one. -->
<string name="onboarding_term_of_service_line_one_link_text" tools:ignore="UnusedResources,BrandUsage">Terms of Service</string>
<!-- Terms of service onboarding page line three text. 'Firefox' intentionally hardcoded here. %S is replaced by an active link, using onboarding_term_of_service_line_two_link_text as text (Privacy Notice). -->
<string name="onboarding_term_of_service_line_two" tools:ignore="UnusedResources,BrandUsage">Firefox cares about your privacy. Read more in our %S.</string>
<!-- Used as text for the link in onboarding_term_of_service_line_two. -->
<string name="onboarding_term_of_service_line_two_link_text" tools:ignore="UnusedResources,BrandUsage">Privacy Notice</string>
<!-- Terms of service onboarding page line three text. 'Firefox' intentionally hardcoded here. %S is replaced by an active link, using onboarding_term_of_service_line_three_link_text as text (“Manage”). -->
<string name="onboarding_term_of_service_line_three" tools:ignore="UnusedResources,BrandUsage">To help improve the browser, Firefox sends diagnostic and interaction data to Mozilla. %S</string>
<!-- Used as text for the link in onboarding_term_of_service_line_three. -->
<string name="onboarding_term_of_service_line_three_link_text" tools:ignore="UnusedResources,BrandUsage">Manage</string>
Reporter | ||
Comment 1•3 days ago
•
|
||
Worth noting that strings are currently not exposed for localization: https://github.com/mozilla-l10n/android-l10n/pull/837
For a short time we can work around it, by temporarily removing them and expose other content, but that's a short-lived solution.
Comment 2•3 days ago
|
||
Set release status flags based on info from the regressing bug 1933253
:amejia, since you are the author of the regressor, bug 1933253, could you take a look? Also, could you set the severity field?
For more information, please visit BugBot documentation.
Assignee | ||
Updated•2 days ago
|
Assignee | ||
Comment 3•2 days ago
|
||
Updated•2 days ago
|
Description
•