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)
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.
Comment 1•10 years ago
|
||
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
status-b2g-master:
--- → affected
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.
Comment 2•10 years ago
|
||
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)
Assignee | ||
Comment 3•10 years ago
|
||
"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?
Assignee | ||
Comment 4•10 years ago
|
||
(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?
Assignee | ||
Comment 5•10 years ago
|
||
(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?
Comment 6•10 years ago
|
||
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
Assignee | ||
Comment 7•9 years ago
|
||
Attachment #8681815 -
Flags: review?(timdream)
Comment 8•9 years ago
|
||
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+
Assignee | ||
Comment 9•9 years ago
|
||
(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?
Comment 10•9 years ago
|
||
(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.
Updated•8 years ago
|
Mentor: timdream
Comment 11•7 years ago
|
||
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.
Description
•