Page MenuHomePhabricator

Allow language selector search in any language on Mismatch Finder
Closed, ResolvedPublic8 Estimated Story Points

Description

As a Mismatch Finder user, I want to be able to find a UI language to switch to not just by searching for its autonym, but also for its name in any other language.

The change will increase findability and avoid frustrating users' expectations in case they're not aware of the fact that they need to use the autonym instead of, for example, their current UI language.

Problem:

  1. open the language selector
  2. type the word "German"
  3. find no matching results
  4. delete input
  5. type "Deutsch"
  6. find matching result

What should happen:

  1. open the language selector
  2. type the word "German" or any other translation of the language's name
  3. find matching result as "Deutsch"

The language selector should still only show autonyms e.g. when searching for "German" the result is given as "Deutsch" see: https://phabricator.wikimedia.org/T345841#9382451

BDD
GIVEN a user wants to switch the UI language of the Mismatch Finder
AND they use the Language selector to pick a new language
WHEN they enter any of the translations of said language
THEN the Language selector provides the language's autonym as a matching result

Acceptance criteria:

  • The Language selector provides autonym matches for searches made in any language

Event Timeline

Arian_Bozorg renamed this task from Allow language selector search in UI language on Mismatch Finder to Allow language selector search in any language on Mismatch Finder.Jan 17 2024, 10:55 AM
Arian_Bozorg updated the task description. (Show Details)

Sprint 3 Planning
All languages available. Can use wikidata.org as a base (user must be logged in to see desired behavior)

Task Breakdown Notes

This requires making a call to Wikidata Action API https://www.wikidata.org/w/api.php?action=languagesearch&format=json&formatversion=2&search=deutsch

Potential Plan of Action

  1. Use the user's input as API parameter to search for the language code
  2. Do the existing local search process and show initial results if available
  3. Search the already existing language data for that language code from API
  4. Display the results

Open Question

  • We are planning to show initial results from our local library and add additional results from API when the API responds. We think there are different use cases, we'd like to have UX' input on this. @Sarai-WMDE

@Sarai-WMDE and I discussed the expected impact of the proposed solution and agreed that there is no need to rethink the UX flow unless it is deemed necessary at the product verification phase.
If it's decided at that phase that we need some "loading" indication to the user, we will probably end up using the inline progress bar.

Unfortunately 'German' and 'Allemand' aren't returning any results

image.png (359×401 px, 12 KB)

image.png (360×407 px, 12 KB)

image.png (351×403 px, 18 KB)

Unfortunately 'German' and 'Allemand' aren't returning any results

image.png (359×401 px, 12 KB)

image.png (360×407 px, 12 KB)

image.png (351×403 px, 18 KB)

Hello @Arian_Bozorg,

Could you please try it on staging? I tried and I managed to have some results for both of them:

Screenshot 2024-03-11 at 13.46.13.png (846×1 px, 76 KB)

Screenshot 2024-03-11 at 13.46.01.png (838×1 px, 79 KB)

Looks good to me :)
This is ready for production now