Page MenuHomePhabricator

Differentiate between "all languages" and "more languages"
Closed, ResolvedPublic8 Estimated Story Points


User Story
As a Wikidata mobile reader
I want to see the terms in all languages I can speak
in order to find out where I can help adding terms

Acceptance Criteria

  • a section containing "more languages" is shown
    • the "more languages" section contains entity information in the languages that are most likely to be spoken by the user, minus the primary language already shown above
  • a section, nested inside the "more languages" section, containing "all entered languages" is shown
    • the "all languages" section contains entity information in the languages that are not the primary language or contained in the "more languages" section
  • the "all entered languages" section is only shown if the "more languages" section is expanded
  • if the browser does not execute javascript, no further languages but the interface language are shown, but links can still be visible


  • the "all entered languages" section was previously implemented in T205261: Add the ability to show terms in all entered languages on mobile
  • section state persistence will be implemented after this is done, even though it was discussed before
  • If the languages "most likely to be spoken by the user" cannot be determined, an empty set is an acceptable return value
  • Although fancy in the mocks, the style of the links can still be "unfancy simple"

"More languages" as first section with "all entered languages nested within"

all entered languages fully expanded

Event Timeline

To me, the more languages is preferred, because the number of languages can only be more and more in anyone's life, rather than "complete in the decades future"

Lea_WMDE triaged this task as Medium priority.Dec 17 2018, 11:16 AM
Lea_WMDE updated the task description. (Show Details)
Lea_WMDE moved this task from Backlog to MVP tickets: In preparation on the Wikidata-Termbox board.
Lea_WMDE set the point value for this task to 8.

While trying to implement the server-side of this, I was somewhat surprised by the behavior. Writing it down here in case it's not just me.

Surprise 1: ULS provides the language list exclusively on the client-side. What is rendered by the server cannot be consistent with what
Surprise 2: On the server-side Wikibase takes Babel into account, whereas ULS doesn't. It is even possible that the "more languages" section is reduced after CSR is initialized.
Surprise 3: For users that are not logged in or those that do not have Babel set up, it is very likely that the list of more languages is empty.

All of this results in inconsistent SSR/CSR behavior, i.e. a very bouncy "more languages" section. The good news (I guess!?) is that this is also how the current termbox behaves.

Based on storytime discussion we are going with the easiest to implement solution as a first step. This means using ULS in the Client Side Rendering, and Server Side Rendering is not part of this ticket.

T113573 seems to be reporting something similar to what @Jakob_WMDE describes above

Change 486862 had a related patch set uploaded (by Jakob; owner: Jakob):
[mediawiki/extensions/Wikibase@master] Update termbox

Change 486862 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Update termbox

Lea_WMDE claimed this task.
Lea_WMDE moved this task from Test (Product Review) to Done on the Wikidata-Termbox-Iteration-8 board.

@Hanna_Petruschat_WMDE has discovered that apparently we've managed to not add the "fewer languages" button (vs the v1 desktop termbox).
Visible on mocks but didn't make it to the acceptance criteria (unless this part was moved to some other story and I failed to notice that).