Closed Bug 1200090 Opened 10 years ago Closed 7 years ago

When some keyboards are shifted, they won't be return to be unshifted automatically.

Categories

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

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(b2g-master affected)

RESOLVED WONTFIX
Tracking Status
b2g-master --- affected

People

(Reporter: vsatayamas, Assigned: vsatayamas)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0 Build ID: 2015080700 Steps to reproduce: 1. Add Thai keyboard from setting 2. Tap at a search box then a keyboard must show up 3. Switch to Thai keyboard layout 4. Tap at shift 5. Tap at any character, for instance, ฐ. Actual results: After doing these 5 steps, the keyboard must be unshifted automatically like in English keyboard but it doesn't. Expected results: The keyboard must be unshifted after tapping a character.
I've been able to reproduce on Aries with several layouts. So far, Thai, Vietnamese (QWERTY), Bengali (the one with latin characters), Arabic, Telugu, Tamil, Hindi. Haven't tried them all, so we'll need to double check once the bug is fixed. Tim, is this a know issue? Since it actually affects many locales, it could have been already reported. If not, I'll ask to check 2.2 Build ID 20150901141727 Gaia Revision 805025801a68f9ddbba6ffd2ed3926c97fa7fcc8 Gaia Date 2015-09-01 08:56:36 Gecko Revision https://hg.mozilla.org/mozilla-central/rev/cea380e8dc0d67a8a8360deb323bac8769f241dd Gecko Version 43.0a1 Device Name aries Firmware(Release) 4.4.2 Firmware(Incremental) eng.worker.20150619.224059 Firmware Date Fri Jun 19 22:41:08 UTC 2015 Bootloader s1
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(timdream)
Summary: When Thai keyboard is shifted, it won't be return to be unshifted automatically. → When some keyboards are shifted, they won't be return to be unshifted automatically.
The shift state are controlled by plug-able "IMEngine" script set by the layout. It needs to implement their own rules in order to switch the state at the right time. We do not know if disengaging the state applies to every language. The layout backed by IMEngine "latin.js" is probably the only IMEngine "unaffected" by this bug. The Thai layout does not specify and IMEngine [1] [1] https://github.com/mozilla-b2g/gaia/blob/master/apps/keyboard/js/layouts/th.js So there is no logic in place to do that. I actually don't know if that applies to Thai language or not at all, as Vee asked here. Vee can confirm that.
Flags: needinfo?(timdream)
"I actually don't know if that applies to Thai language or not at all, as Vee asked here. Vee can confirm that." I'm sure what "that" in the sentence above refer to. Should I try to add imEngine to th.js in my machine, in order to check whether it could fix this bug?
(In reply to Tim Guan-tin Chien [:timdream] (slow response; please ni? to queue) from comment #2) > The shift state are controlled by plug-able "IMEngine" script set by the > layout. It needs to implement their own rules in order to switch the state > at the right time. We do not know if disengaging the state applies to every > language. The layout backed by IMEngine "latin.js" is probably the only > IMEngine "unaffected" by this bug. > > The Thai layout does not specify and IMEngine [1] > > [1] > https://github.com/mozilla-b2g/gaia/blob/master/apps/keyboard/js/layouts/th. > js > > So there is no logic in place to do that. > > I actually don't know if that applies to Thai language or not at all, as Vee > asked here. Vee can confirm that. "I actually don't know if that applies to Thai language or not at all, as Vee asked here. Vee can confirm that." I'm *not* sure what "that" in the sentence above refer to. Should I try to add imEngine to th.js in my machine, in order to check whether it could fix this bug?
(In reply to Tim Guan-tin Chien [:timdream] (slow response; please ni? to queue) from comment #2) > The shift state are controlled by plug-able "IMEngine" script set by the > layout. It needs to implement their own rules in order to switch the state > at the right time. We do not know if disengaging the state applies to every > language. The layout backed by IMEngine "latin.js" is probably the only > IMEngine "unaffected" by this bug. I made an experiment by using latin as imEngine and it works. Video: https://www.facebook.com/veer66/videos/10153028479777595/ Should I create imEngine for Thai?
Hi Vee, (In reply to Vee Satayamas from comment #4) > "I actually don't know if that applies to Thai language or not at all, as > Vee asked here. Vee can confirm that." > > I'm *not* sure what "that" in the sentence above refer to. that = the behavior you described. Given the fact I don't type Thai, I don't know if leaving the shift state for Thai layout is the desired behavior for the user. Given your involvement on this bug, I assume you, as a Thai layout user, confirm this is indeed a desired behavior, right? > Should I try to add imEngine to th.js in my machine, in order to check > whether it could fix this bug? It seems that you have managed to produce a patch locally, I am assigning this to you so you could submit your patch :). (In reply to Vee Satayamas from comment #5) > I made an experiment by using latin as imEngine and it works. > > Video: https://www.facebook.com/veer66/videos/10153028479777595/ > > Should I create imEngine for Thai? I would recommend more careful testing of your own patch. "latin" without a dictionary while track the shift state for you, it would also do something else around punctuation like insert space when necessary or switch pack from the symbol layout page when a certain symbols is entered. I don't know if all of the behavior are necessary for Thai. You should be the judge here.
Assignee: nobody → vsatayamas
Mentor: timdream
Attachment #8681815 - Flags: review?(timdream)
Comment on attachment 8681815 [details] [review] Fix remain shifting for Thai keyboard Please update LayoutConfigurator and fix the indent per comment. Please also check the test result of the pull request and fix test failure accordingly (if any). Thank you for contributing!
Attachment #8681815 - Flags: review?(timdream) → feedback+
(In reply to Tim Guan-tin Chien [:timdream] (please needinfo) from comment #8) > Please update LayoutConfigurator and fix the indent per comment. Please also > check the test result of the pull request and fix test failure accordingly > (if any). Excuse me. I have no idea what to do with "noop" in apps/keyboard/js/imes/thai/thai.js. Is it special function that should be called?
(In reply to Vee Satayamas from comment #9) > (In reply to Tim Guan-tin Chien [:timdream] (please needinfo) from comment > #8) > > > Please update LayoutConfigurator and fix the indent per comment. Please also > > check the test result of the pull request and fix test failure accordingly > > (if any). > > Excuse me. I have no idea what to do with "noop" in > apps/keyboard/js/imes/thai/thai.js. Is it special function that should be > called? The comment there refer to the fact |setUpperCase()| has no effect (effectively an function with no operation -- "noop") when the upper case state is already |false|. There is nothing required to change in that part.
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: