Closed
Bug 1461085
Opened 7 years ago
Closed 3 years ago
Keyboard navigation broken in RAP tree widget [regression]
Categories
(Web Compatibility :: Desktop, defect, P1)
Tracking
(Not tracked)
RESOLVED
INCOMPLETE
People
(Reporter: linuxhippy, Unassigned, NeedInfo)
References
()
Details
(Keywords: regression, site-compat, webcompat:site-wait, Whiteboard: [sitewait])
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0
Build ID: 20180511220149
Steps to reproduce:
1. Opened a RAP based application, like: http://192.168.56.1:8080/rap
2. clicked on the tree widget
3. tried to navigate through using the arrow keys:
Actual results:
arrow keys did not work
Expected results:
navigation should be possible as it was with firefox before ~2018.04 and as it is with all other browsers
Reporter | ||
Updated•7 years ago
|
Has Regression Range: --- → yes
Reporter | ||
Comment 1•7 years ago
|
||
regression-window |
screencast illustrating the issue: https://youtu.be/WPtaAsH6Ogw
16:19.88 INFO: Narrowed inbound regression window from [1e6febc9, 2ab582ba] (3 builds) to [d10dc4dc, 2ab582ba] (2 builds) (~1 steps left)
16:19.88 INFO: No more inbound revisions, bisection finished.
16:19.88 INFO: Last good revision: d10dc4dc4162b15320bf468adaf5cf0859666c23
16:19.88 INFO: First bad revision: 2ab582bacc98fecfc3cc52b3f275a23ff40a683f
16:19.88 INFO: Pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=d10dc4dc4162b15320bf468adaf5cf0859666c23&tochange=2ab582bacc98fecfc3cc52b3f275a23ff40a683f
Updated•7 years ago
|
Updated•7 years ago
|
Keywords: regression,
site-compat
Comment 2•7 years ago
|
||
Yeah, RAP does hack only for Gecko even though this must not be unnecessary since they can handle them at "keydown" with Event.preventDefault().
If they need to check if keypress event is redundant on Gecko (i.e., it'll be stopped in the future release), they can check it with:
function isRedundantKeyPress(aEvent) {
if (aEvent.type != "keypress") {
return false;
}
if (aEvent.key === "Enter") {
// Only Enter, Shift + Enter, Ctrl + Enter causes keypress event on newer Firefox.
if (aEvent.metaKey || aEvent.altKey) {
return true;
}
return (aEvent.shiftKey && aEvent.ctrlKey);
}
// If any character isn't produced, the key combination won't cause keypress event on newer Firefox.
if (!aEvent.charCode) {
return true;
}
// If a character is produced, ctrlKey, altKey and metaKey are always false of keypress event on Firefox.
return aEvent.ctrlKey || aEvent.altKey || aEvent.metaKey;
}
If this returns true for a keypress event, the event should be ignored and any non-printable key operation should be handled at keydown event.
Component: DOM: Events → Desktop
Flags: needinfo?(masayuki)
Product: Core → Tech Evangelism
Version: 61 Branch → Firefox 61
Reporter | ||
Comment 3•7 years ago
|
||
I will file a bug-report against RAP - however what is the timeframe this Gecko change is expected to land?
RAP is quite widely used in corporate-internal web apps.
Comment 4•7 years ago
|
||
(In reply to Clemens Eisserer from comment #3)
> I will file a bug-report against RAP - however what is the timeframe this
> Gecko change is expected to land?
> RAP is quite widely used in corporate-internal web apps.
We don't have fixed schedule yet. Depending on how many and how important web apps are broken. For example, currently, most google's applications are broken and they're working on fix right now. On the other hand, this change is important for us. Therefore, even if some web apps using RAP is broken when we release the new behavior, we'd release perhaps.
Comment 5•7 years ago
|
||
Adam, could you investigate how we can get in touch with this project? Comment #3 mentions a bug report, but it would be good to reach out as well, I think.
Priority: -- → P1
Whiteboard: [needscontact]
Updated•7 years ago
|
Flags: needinfo?(astevenson)
Clemens was so kind to open a bug report against our Eclipse RAP project:
534628: Keyboard navigation broken in tree widget with Firefox Nightly/Beta releases
https://bugs.eclipse.org/bugs/show_bug.cgi?id=534628
Thanks for bringing this to our attention! We are now aware of it, and will be watching this bug.
On our side we'd need the final Firefox version number in order to limit the fix to it, and to avoid compatibility issues or regressions in older versions. As soon as the Firefox schedule is finalized, we'd be thankful to get this information.
At the moment we are in the release candidate phase of RAP 3.5. When this change is included in Firefox, we could integrate the fix in an early nightly RAP build towards 3.6M1, or whenever appropriate.
Comment 7•7 years ago
|
||
(In reply to Markus from comment #6)
> On our side we'd need the final Firefox version number in order to limit the
> fix to it, and to avoid compatibility issues or regressions in older
> versions. As soon as the Firefox schedule is finalized, we'd be thankful to
> get this information.
No, until most existing web apps fix their behavior, we cannot release the new behavior at least for now because if some web apps will be broken by the new behavior, users using such web apps may decide to switch their default browser from Firefox.
As I explained at comment 2, web apps should ignore unnecessary keypress events and handle keydown events as same as running on the other browsers.
# And I found a bug at comment 2. The last return statement should ignore altKey value only on macOS since for example, option + KeyA may cause inputting a Unicode character. When an editor (<input>, <textarea>, contenteditable, etc) has focus, Gecko unset altKey value but not so when no editor has focus.
Updated•7 years ago
|
Flags: needinfo?(astevenson)
Updated•6 years ago
|
Whiteboard: [needscontact] → [sitewait]
Comment 8•6 years ago
|
||
Mantaroh has created a patch for this and, with Ivan's help, it seems to be all but ready to merge.
It does appear to have missed the 3.6 release, however.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Comment 9•6 years ago
|
||
Yes, we have a patch ready to be merged. I have couple of questions:
1. Is this major Firefox change announced and documented somewhere in a release notes or other place (blog post)? We need this information in order to announce it in our RAP home page.
2. To make the change safe and still compatible with the older Firefox version we have a version switch in the code. What is the planned Firefox release version of this change - Firefox 64 (release in December)? If this is the case, it will be just in time for RAP 3.7 release (December 19th).
3. Do you have any list of users for product upgrade communication, where you can announce that RAP 3.7 will be compatible with this Firefox change?
Comment 10•6 years ago
|
||
(In reply to Ivan Furnadjiev from comment #9)
> Yes, we have a patch ready to be merged. I have couple of questions:
> 1. Is this major Firefox change announced and documented somewhere in a
> release notes or other place (blog post)? We need this information in order
> to announce it in our RAP home page.
Although I don't know there is "official" one since we still don't have fixed schedule of its release. But here is the document:
https://www.fxsitecompat.com/en-CA/docs/2018/non-printable-keys-will-soon-stop-firing-keypress-event/
> 2. To make the change safe and still compatible with the older Firefox
> version we have a version switch in the code. What is the planned Firefox
> release version of this change - Firefox 64 (release in December)? If this
> is the case, it will be just in time for RAP 3.7 release (December 19th).
Not yet fixed since medium.com is still broken, and we're waiting their fix.
> 3. Do you have any list of users for product upgrade communication, where
> you can announce that RAP 3.7 will be compatible with this Firefox change?
I don't know, but as far as I know, there is no user-list of specific service/framework.
Comment 11•6 years ago
|
||
(In reply to Ivan Furnadjiev from comment #9)
> 3. Do you have any list of users for product upgrade communication, where
> you can announce that RAP 3.7 will be compatible with this Firefox change?
Maybe we could make an annoucement on our enterprise mailing list?
https://mail.mozilla.org/listinfo/enterprise
(probably not huge circulation, but it's better than nothing...)
Adam, could you help with that?
Flags: needinfo?(astevenson)
Comment 12•6 years ago
|
||
Yep, talked to mkaply. I'll draft up an email and he'll post it to the list. Leaving NI for now.
Flags: needinfo?(astevenson)
Comment 13•6 years ago
|
||
Is the release date of this change fixed now - Firefox 64 (release in December)?
Comment 14•6 years ago
|
||
(In reply to Ivan Furnadjiev from comment #13)
> Is the release date of this change fixed now - Firefox 64 (release in
> December)?
It's not fixed. Unfortunately there are a number of interrelated changes that might need to be shipped together. As I understand it, Firefox 65 (currently scheduled for 2019-01-29) is the earliest we're likely to ship the keypress changes.
Comment 15•6 years ago
|
||
Happy New Year!
As Firefox 65 release is approaching, do you have information if this "keypress" event change will be included there?
Comment 16•6 years ago
|
||
(In reply to Ivan Furnadjiev from comment #15)
Happy New Year!
As Firefox 65 release is approaching, do you have information if this "keypress" event change will be included there?
Currently, we plan to ship new behavior starting from 65. (I really hope that we won't cancel it due to major apps breakage.)
Assignee | ||
Updated•6 years ago
|
Product: Tech Evangelism → Web Compatibility
Comment 17•6 years ago
|
||
See bug 1547409. Moving webcompat whiteboard tags to keywords.
Keywords: webcompat:site-wait
Updated•3 years ago
|
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → INCOMPLETE
Comment 18•3 years ago
|
||
Reporter, could you please provide a similar URL, as the original URL returns no result. Also, is the issue reproducible on your side using the latest build of Firefox Nightly?
Flags: needinfo?(linuxhippy)
You need to log in
before you can comment on or make changes to this bug.
Description
•