Closed
Bug 599811
Opened 14 years ago
Closed 14 years ago
fn/alt/shift keys on android needs to stay pressed for the next key entry
Categories
(Firefox for Android Graveyard :: General, defect)
Tracking
(fennec2.0b3+)
VERIFIED
FIXED
Tracking | Status | |
---|---|---|
fennec | 2.0b3+ | --- |
People
(Reporter: mevans, Assigned: mwu)
References
Details
(Keywords: relnote)
Attachments
(2 files)
5.38 KB,
patch
|
dougt
:
review-
|
Details | Diff | Splinter Review |
5.41 KB,
patch
|
dougt
:
review+
|
Details | Diff | Splinter Review |
currently you have to press and hold the fn key plus the next key for it to access the function value. Other browsers will keep it pressed until the next key press.
Updated•14 years ago
|
tracking-fennec: --- → ?
Flags: in-testsuite?
OS: Mac OS X → Android
Hardware: x86 → ARM
Issue also occurs on Maemo 5 GTK/N900 Mozilla/5.0 (Maemo;Linux armv71; rv:2.0b7pre)Gecko/20100930 Firefox/4.0b7pre Fennec/4.0b2pre Mozilla/5.0 (Android; Linux armv71; rv2.0b7pre) Gecko/20100930 Firefox/4.0b7pre Fennec/4.0b2pre
OS: Android → All
Reopening bug 583327 since I was told that the Android doesn't work for a different reason than Maemo.
Assignee | ||
Updated•14 years ago
|
OS: All → Android
Updated•14 years ago
|
tracking-fennec: ? → 2.0b2+
Comment 3•14 years ago
|
||
This affects all modifier keys on Android hardware keyboards, including Fn, Alt, and Shift.
Summary: physical fn key on Samsung epic keyboard needs to stay pressed for the next key entry → fn/alt/shift keys on android needs to stay pressed for the next key entry
Updated•14 years ago
|
tracking-fennec: 2.0b2+ → 2.0b3+
Updated•14 years ago
|
Assignee: nobody → mkristoffersen
OS: Android → All
Comment 8•14 years ago
|
||
crowder - can you take a look? MikeK has no android device yet.
Assignee: mkristoffersen → crowderbt
Comment 9•14 years ago
|
||
I don't have any Android device that also has a hardware keyboard...
Comment 10•14 years ago
|
||
(In reply to comment #0) > currently you have to press and hold the fn key plus the next key for it to > access the function value. Other browsers will keep it pressed until the next > key press. This "workaround" is not working on G2
Comment 11•14 years ago
|
||
On a droid 2 Pressing just the 'a' key: 11-19 10:09:54.581 4727 4727 I GeckoApp: onKeyDown 29 11-19 10:09:54.589 4727 4727 W GeckoAppJava: IME: getEditable called from dalvik.system.VMStack.getThreadStackTrace(Native Method) 11-19 10:09:54.604 4727 4735 I GeckoAppJava: IMEStateUpdate notifyIMEChange start: 0 end: 14 newEnd: 0 11-19 10:09:54.612 4727 4735 I GeckoAppJava: IMEStateUpdate notifyIMEChange a start: 0 end: 0 newEnd: 1 11-19 10:09:54.612 4727 4735 I GeckoAppJava: IMEStateUpdate notifyIMEChange start: 1 end: 1 newEnd: -1 11-19 10:09:54.862 4727 4727 I GeckoApp: onKeyUp 29 Pressing the shift key, then the 'a' key: 11-19 10:10:00.221 4727 4727 I GeckoApp: onKeyDown 59 11-19 10:10:00.456 4727 4727 W GeckoAppJava: IME: getEditable called from dalvik.system.VMStack.getThreadStackTrace(Native Method) 11-19 10:10:00.456 4727 4727 I GeckoApp: onKeyUp 59 11-19 10:10:01.050 3891 3891 D MetaKeyHandler: create a new event with new meta state 11-19 10:10:01.057 4727 4727 I GeckoApp: onKeyDown 29 11-19 10:10:01.065 4727 4727 W GeckoAppJava: IME: getEditable called from dalvik.system.VMStack.getThreadStackTrace(Native Method) 11-19 10:10:01.089 4727 4735 I GeckoAppJava: IMEStateUpdate notifyIMEChange aa start: 1 end: 1 newEnd: 2 11-19 10:10:01.089 4727 4735 I GeckoAppJava: IMEStateUpdate notifyIMEChange start: 2 end: 2 newEnd: -1 11-19 10:10:01.292 4727 4727 I GeckoApp: onKeyUp 29 Pressing the shift, holding it, then pressing the 'a' key: 11-19 10:11:47.128 4727 4727 I GeckoApp: onKeyDown 59 11-19 10:11:47.237 4727 4727 I GeckoApp: onKeyDown 47 11-19 10:11:47.245 4727 4727 W GeckoAppJava: IME: getEditable called from dalvik.system.VMStack.getThreadStackTrace(Native Method) 11-19 10:11:47.261 4727 4735 I GeckoAppJava: IMEStateUpdate notifyIMEChange S start: 0 end: 0 newEnd: 1 11-19 10:11:47.261 4727 4735 I GeckoAppJava: IMEStateUpdate notifyIMEChange start: 1 end: 1 newEnd: -1 11-19 10:11:47.456 4727 4727 I GeckoApp: onKeyUp 47 11-19 10:11:47.675 4727 4727 W GeckoAppJava: IME: getEditable called from dalvik.system.VMStack.getThreadStackTrace(Native Method) 11-19 10:11:47.675 4727 4727 I GeckoApp: onKeyUp 59
Assignee | ||
Comment 13•14 years ago
|
||
Attachment #492399 -
Flags: review?(doug.turner)
Comment 14•14 years ago
|
||
Comment on attachment 492399 [details] [diff] [review] Use KeyListener to filter keyevents --- GeckoSurfaceView.java Applied patch and rejects were found.
Comment 15•14 years ago
|
||
I think I am missing something, i applied this patch and still see the same behavior.
Assignee | ||
Comment 16•14 years ago
|
||
Updated•14 years ago
|
Attachment #492399 -
Flags: review?(doug.turner) → review-
Comment 17•14 years ago
|
||
Comment on attachment 492424 [details] [diff] [review] Use KeyListener to filter keyevents (without dependency on other patches) cool. this patch worked for me. >- GeckoAppShell.sendEventToGecko(new GeckoEvent(event)); >+ if (GeckoApp.surfaceView.mIMEState == 0 || nit: is there a IME_STATE_ define that we can use here instead of 0 >+ keyCode == KeyEvent.KEYCODE_ENTER || >+ !GeckoApp.surfaceView.mKeyListener.onKeyDown(GeckoApp.surfaceView, GeckoApp.surfaceView.mEditable, keyCode, event)) >+ GeckoAppShell.sendEventToGecko(new GeckoEvent(event)); Reading over the code, it wasn't plainly clear when onKeyDown or onKeyUp would return false here. >+ int maxLen = GeckoApp.surfaceView.mEditable.length(); >+ if (end > GeckoApp.surfaceView.mEditable.length()) >+ end = GeckoApp.surfaceView.mEditable.length(); use a temporary variable for |GeckoApp.surfaceView.mEditable.length()| >+ public void setupEditable(String contents) >+ { >+ mEditable = mEditableFactory.newEditable(contents); >+ mEditable.setSpan(inputConnection, 0, contents.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE); >+ Selection.setSelection(mEditable, contents.length()); >+ } probably want to have another temporary for .length() Overall fine. Love to get you to add some comments, but that can be a followup
Attachment #492424 -
Flags: review+
Assignee | ||
Updated•14 years ago
|
OS: All → Android
Hardware: ARM → All
Assignee | ||
Comment 18•14 years ago
|
||
http://hg.mozilla.org/mozilla-central/rev/0b2b0417c11f Lemme know if you want more comments.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Comment 19•14 years ago
|
||
Somehow these hunks got reversed between review and checkin, causing bug 614223. Fix pushed: http://hg.mozilla.org/mozilla-central/rev/0ffa6f6ee041
Works for Maemo, need to wait for android
Verified: Mozilla/5.0 (Android; Linux armv71; rv2.0b8pre) Gecko/20101129 Firefox/4.0b8pre Fennec/4.0b3pre Note : bug 615278
Updated•14 years ago
|
Status: RESOLVED → VERIFIED
You need to log in
before you can comment on or make changes to this bug.
Description
•