Page MenuHomePhabricator

Limited discovery: What is needed to implement language fallback on mobile termbox?
Closed, ResolvedPublic1 Estimated Story Points

Description

Problem 1:
The new mul language code functionality depends on a reliable language fallback chain. So far, the Mobile version seems to follow a different language fallback chain than we follow on Desktop:

Mobile IP experience

  • Heading: English (likely uselang, but cannot be changed) *without* language fallback
  • In more languages: English (in the heading), German, French, Bavarian (unclear where this comes from, it is different to desktop)
  • All entered languages: All entered languages
  • https://m.wikidata.org/wiki/Q444444?uselang=en-gb (please log out)

Desktop IP experience

  • Heading: Uselang (can be changed) *with* language fallback
  • In more languages: English, German, Uselang, Russian (unclear where this comes from, it is different to mobile)
  • All entered languages: All entered languages
  • https://www.wikidata.org/wiki/Q444444?uselang=en-gb (please log out)

Mobile logged-in experience

  • Heading: uselang (can also be set via uselang=) *without* language fallback
  • In more languages: 1. Uselang (in the heading), 2. Based on Babels
  • All entered languages: All entered languages
  • https://m.wikidata.org/wiki/Q444444?uselang=en-gb (please log in)

Desktop logged-in experience

Problem 2:
If you edit using the mobile termbox, you can edit the heading directly.

image.png (580×774 px, 25 KB)

This workflow makes the mobile termbox incompatible with language fallback.

To enable language fallback on the mobile termbox, we would need to modify the editing workflow. It is currently unclear to us, how much of that work would survive a later refactoring of the front end (to make full use of the new design system). This information would help us to better plan what changes we want to make now and what changes we can make at a later point in time (with greater overall effectiveness).

Acceptance criteria:
Problem 1:

  • We understand where the differences between Mobile and Desktop come from.
  • We understand what will be needed to make the Mobile language fallback the same as on the Desktop.

Problems 1 & 2:

  • We understand, how much of the work is still useful after we replace the frontend (in favor of a new design system-powered version).

Event Timeline

It seems to be taking the Babel into account on my end:

image.png (617×1 px, 79 KB)

Also, “English, German, French, Bavarian” is based on the visitor’s approximate geographical information.

Manuel renamed this task from Limited discovery: What is the current state of language handling on mobile termbox? to Limited discovery: What is needed to make mobile termbox ready for MUL?.Nov 23 2022, 8:23 PM
Manuel renamed this task from Limited discovery: What is needed to make mobile termbox ready for MUL? to Limited discovery: What is needed to implement language fallback on mobile termbox?.
Manuel updated the task description. (Show Details)

I couldn't reproduce the order in "In more languages" section (desktop and mobile has the same order of items, both logged out). After talking with @ItamarWMDE, we decided to take a deeper look into fallback algorithm and terms. Then we can talk about edit mechanism in mobile termbox.

It seems like difference between desktop and mobile was because of the order and content of language codes array sent to Termbox renderer and right now it's already solved. Editing workflow on mobile can be changed within a day, IMO.

This is great news! Thank you, Hasan!

I can confirm that all differences between mobile and desktop seem to now only come from the missing fallback in the heading on mobile (apart from some diverging geolocation results).

This is a description of the status quo:

Screenshot 2023-01-31 172626.png (316×636 px, 33 KB)