Closed Bug 902130 Opened 11 years ago Closed 11 years ago

Keyboard layout does not always switch correctly when changing device to some non-Latin locales

Categories

(Firefox OS Graveyard :: Gaia::Keyboard, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(blocking-b2g:leo+, b2g18 verified)

RESOLVED FIXED
blocking-b2g leo+
Tracking Status
b2g18 --- verified

People

(Reporter: delphine, Assigned: mihai)

Details

Attachments

(1 file)

...and according to Bug 828237, it should.

Tested on 3 different builds:

1. Leo Moz RIL, v1.1 on August 6, 2013
Gaia   4c1a20570e20f64782ba170c14604395c48f7381
BuildID 20130806071254
Version 18.1

* Description:
When switching locales present on this build, keyboard layout does not switch accordingly to: Chinese. 
Serbian requires a reboot of message app in order to appear correctly on keyboard. 

When choosing any of the other locales present on this build, keyboard layout switches correctly.

2. Vendor Build - Serbian August 1st Build (v1.1)
When choosing Serbian Cyrillic during FTE, keyboard layout appears in English by default. Same thing when choosing this locale under Settings. 

When choosing any of the other locales present on this build, keyboard layout switches correctly.

3. Vendor Build - Montenegro August 1st Build (v1.1)
When choosing Serbian Cyrillic during FTE, keyboard layout appears in English by default. Same thing when choosing this locale under Settings. 

When choosing any of the other locales present on this build, keyboard layout switches correctly.
Hi Delphine,

The English keyboard is enabled by default for non-latin keyboards as per bug 868001, to enable users to input WiFi passwords and other authentication forms in general. The language associated keyboard is also enabled and accessible through the keyboard switch button (globe key).

For points 2. and 3. tested on latest master (70a9797) and it indeed seems that the Serbian keyboards are not enabled and only the default one is active (i.e. English). Will investigate this issue.
Assignee: nobody → mihai
The language code for Serbian Cyrillic is 'sr-Cyrl', which was not defined in 'keyboard_layouts.json'. Thus, when the locale changed to Serbian, the keyboard settings logic could not find a layout for 'sr-Cyrl' and enabled the default layout (English).
Attachment #787241 - Flags: review?(dflanagan)
Nominating this for uplift, given that the bug was reported against v1.1 vendor builds
blocking-b2g: --- → leo?
Comment on attachment 787241 [details]
Pull Request #11414 - Properly set Serbian kb layout

Thanks for this fix, Mihai, and sorry that it has taken me so long to review it.

I'm not able to test this myself because I don't remember how to produce a localized build that includes serbian.  But the patch just affects two lines and corrects a mismatch between shared/resources/languages.json and shared/resources/keyboard_layouts.json
Attachment #787241 - Flags: review?(dflanagan) → review+
Delphine,

Are you able to test the fix on master and verify that it resolves the bug? 

If so, and if we're launching 1.1 in Serbian-speaking markets, we should really uplift.
Status: NEW → RESOLVED
Closed: 11 years ago
Flags: needinfo?(lebedel.delphine)
Resolution: --- → FIXED
Given this affects a launch market, blocking.
blocking-b2g: leo? → leo+
Looking good on master for Serbian Cyrillic
Tested on toady's Unagi engineering build, 2013-08-20-040204
Flags: needinfo?(lebedel.delphine)
I was not able to uplift this bug to v1-train.  If this bug has dependencies which are not marked in this bug, please comment on this bug.  If this bug depends on patches that aren't approved for v1-train, we need to re-evaluate the approval.  Otherwise, if this is just a merge conflict, you might be able to resolve it with:

  git checkout v1-train
  git cherry-pick -x -m1 57d18d6ff92036b3df91a2b59a5b5a64806a72d1
  <RESOLVE MERGE CONFLICTS>
  git commit
Flags: needinfo?(mihai)
BTW, other v1.1 locales have been identified as not having all the corresponding and necessary keyboard characters: see Bug 907763 and Bug 907763
(In reply to John Ford [:jhford] -- please use 'needinfo?' instead of a CC from comment #9)
> I was not able to uplift this bug to v1-train.  If this bug has dependencies
> which are not marked in this bug, please comment on this bug.  If this bug
> depends on patches that aren't approved for v1-train, we need to re-evaluate
> the approval.  Otherwise, if this is just a merge conflict, you might be
> able to resolve it with:
> 
>   git checkout v1-train
>   git cherry-pick -x -m1 57d18d6ff92036b3df91a2b59a5b5a64806a72d1
>   <RESOLVE MERGE CONFLICTS>
>   git commit

Submitted a new PR for the v1-train uplift that fixes the conflicts: https://github.com/mozilla-b2g/gaia/pull/11676

Feel free to merge that as the changes are minimal and easy to compare with the original commit that landed on master.
Flags: needinfo?(mihai) → needinfo?(jhford)
The fix has landed on v1-train with the patch for bug 907763.
Flags: needinfo?(jhford)
The following issue still reproduces, not sure if this similar,
When in "Settings" choose Non-Latin language as "Hebrew" or "Arabic" and any other language like English
1. In the "Keyboard" settings choose "Non-Latin" language as "Hebrew" or "Arabic" and any language like English
2. Open "Message" app from the home screen
3. Tap the "Globe" button to change the language

Actual Result:
When switching to the different language after "Hebrew" and "Arabic" the keyboard disappears

Expected Result:
All locales keyboards switching without issues

Notes:
"Hebrew" and "Arabic" are not priority for 1.1, but the issue looks similar to the title.
1) When choosing Serbian Cyrillic during FTE, or from "Settings" Serbian appears as the only language with two layouts (Latin/Cyrillic) 
2) All keyboard locales are switching without issues except the keyboard shuts down, when switching after Hebrew or Arabic, the new bug is created for this issue: 
https://bugzilla.mozilla.org/show_bug.cgi?id=912585 

Environmental  Variables:
Build ID: 20130904041204
Gecko: http://hg.mozilla.org/releases/mozilla-b2g18/rev/307824edadd7
Gaia: d0a415bbf23e5d01c2b287d9fca708e167cfe70d
Platform Version: 18.1
RIL Version: 01.01.00.019.212
Firmware revision: D300f10a
Depends on: 912585
(In reply to sarsenyev from comment #13)
> The following issue still reproduces, not sure if this similar,
> When in "Settings" choose Non-Latin language as "Hebrew" or "Arabic" and any
> other language like English
> 1. In the "Keyboard" settings choose "Non-Latin" language as "Hebrew" or
> "Arabic" and any language like English
> 2. Open "Message" app from the home screen
> 3. Tap the "Globe" button to change the language
> 
> Actual Result:
> When switching to the different language after "Hebrew" and "Arabic" the
> keyboard disappears
> 
> Expected Result:
> All locales keyboards switching without issues
> 
> Notes:
> "Hebrew" and "Arabic" are not priority for 1.1, but the issue looks similar
> to the title.

Hi sarsenyev, the issue you pointed is not related to this bug, but with bug 874011 and it was deliberate (see bug 874011 comment 40) since switching from keyboard layouts with non-latin input methods (Arabic, Hebrew) require re-focus of the input field in order to properly set the word suggestions engine for latin keyboard layouts.
No longer depends on: 912585
As per comment 15, this bug is fixed on Leo COM RIL 1.1

1) When choosing Serbian Cyrillic during FTE, or from "Settings" Serbian appears as the only language with two layouts (Latin/Cyrillic) 
2) All keyboard locales are switching between Serbian-Chinese or other languages and not require the restart

Environmental  Variables:
Build ID: 20130904041204
Gecko: http://hg.mozilla.org/releases/mozilla-b2g18/rev/307824edadd7
Gaia: d0a415bbf23e5d01c2b287d9fca708e167cfe70d
Platform Version: 18.1
RIL Version: 01.01.00.019.212
Firmware revision: D300f10a
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: