Closed
Bug 400568
Opened 18 years ago
Closed 16 years ago
Keyboard Back/Forward keys sending VK_BROWSER_BACK/FORWARD go back/forward twice
Categories
(Core :: Widget: Win32, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: bugs1m.wisefool, Assigned: mayhemer)
References
Details
(Keywords: fixed1.9.1)
Attachments
(1 file, 1 obsolete file)
2.04 KB,
patch
|
emaijala+moz
:
review+
roc
:
superreview+
beltzner
:
approval1.9.1+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a8) Gecko/2007091216 GranParadiso/3.0a8
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a8) Gecko/2007091216 GranParadiso/3.0a8
This is a regression I'm noticing on my Thinkpad T60, Windows XP laptop. If I click on a fragment identifier for the page I'm on currently, pressing Thinkpad's Back key will jump back two URL's instead of one. Alt+left still goes back one as expected. The Forward key has the same problem.
Reproducible: Always
Steps to Reproduce:
1. Go to about:
2. Go to http://en.wikipedia.org/wiki/Mozilla_Firefox
3. Click 'History' in table of contents
4. Press 'Back' button on Thinkpad keyboard
Actual Results:
about: is displayed
Expected Results:
It should behave the same as if I pressed the Back button in the UI
Reporter | ||
Updated•18 years ago
|
Version: unspecified → Trunk
Comment 1•18 years ago
|
||
I can't confirm this for you, I'm afraid. Perhaps try it with the latest build first.
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a9pre) Gecko/2007102005 Minefield/3.0a9pre ID:2007102005
Reporter | ||
Comment 2•18 years ago
|
||
I just checked; it still happens with a fresh profile in the 2007-10-21 nightly.
Comment 3•18 years ago
|
||
Do you happen to know when this started regressing?
Reporter | ||
Comment 4•18 years ago
|
||
Alright, I just tested it; this happens in the 2006-12-01-04 nightly, but doesn't happen in the 2006-11-30-04 nightly or Gran Paradiso Alpha 1.
Reporter | ||
Comment 5•17 years ago
|
||
I'm still experiencing this. Is there any information in my system configuration I can ferret out that would be useful? I'm not sure if the back/forward keys are interpreted by Windows XP, or a Thinkpad driver that might be the problem.
Again, this first regressed in the 2006-12-01-04 nightly.
![]() |
Assignee | |
Comment 6•17 years ago
|
||
I could not reproduce this with FF 3.0.
Status: UNCONFIRMED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Comment 7•17 years ago
|
||
(In reply to comment #6)
> I could not reproduce this with FF 3.0.
>
The reporter wrote this bug still happens to him. Furthermore the correct resolution should be at least worksforme :-) I reopen it.
Wisefool, does this bug happens to you with the latest trunk (3.1) with a blank profile?
Status: RESOLVED → UNCONFIRMED
Resolution: FIXED → ---
I have a Thinkpad T43p and used to experience this bug, then I updated a bunch of Thinkpad drivers and the problem disappeared. Apparently Lenovo has squashed this one for us.
![]() |
Assignee | |
Comment 9•17 years ago
|
||
I was testing with quit new T61 and could not reproduce this problem.
In reply to comment 8: could you please just post a comment for record where/how did you update the drivers if it were not updated automatically by Lenovo update software? It could be useful for others still experiencing the problem and looking for solution.
Thanks.
Comment 10•17 years ago
|
||
Actually, the driver update does not seem to have entirely corrected the problem. Now it seems to do it only some of the time. Once it starts, it will consistently do it while Firefox remains open, but I can't always force it to reproduce the bug.
Comment 11•17 years ago
|
||
After additional testing...
I have managed to encounter the bug on a non-Thinkpad. Apparently it is caused by the generic "Back" and "Forward" keyboard codes, as I have a pretty generic USB keyboard that didn't come with any driver, and using its Back and Forward buttons produce the problem. Presumably, these are the VK_BROWSER_BACK and VK_BROWSER_FORWARD keycodes in Windows.
Also, it only occurs when the current location and the previous (or next, in the case of forward) location are different parts of the same page. The page you end up on (+/- 2 locations) doesn't seem to matter.
Hopefully this information will help others reproduce the bug.
Comment 12•17 years ago
|
||
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208
Confirming. One further observation: When the issue happens, the load state of the jumped over page and the one following it isn't "Done" but "Stopped".
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: Thinkpad Back/Forward keys go back/forward twice → Keyboard Back/Forward keys sending VK_BROWSER_BACK/FORWARD go back/forward twice
![]() |
Assignee | |
Comment 14•17 years ago
|
||
qgl6049: thanks, I can reproduce this. Assigning to me.
Assignee: nobody → honzab.moz
Status: NEW → ASSIGNED
![]() |
Assignee | |
Comment 15•17 years ago
|
||
Problem is that we receive two events: WM_APPCOMMAND with lParam=APPCOMMAND_BROWSER_BACKWARD/FORWARD which is handled from PeekKeyAndIMEMessage and event WK_(SYS)KEYDOWN with code VK_BROWSER_BACK/FORWARD handled later in the same cycle. Both these events lead to call of nsSHistory::GoBack/GoForward which goes exactly to history item at nsSHistory::mIndex+1 or -1. In case of anchor navigation (moving on the same page) mIndex indicating on what item of the history list we currently are is updated synchronously (call to nsSHistory::UpdateIndex), before the second call to nsSHistory::GoBack/GoForward function. We actually always duplicate its call when using these back/forward keys but it is ignored because usually mIndex is not updated that soon and leads just to reload fo the same page, invisible to user.
The patch therefor ignores the key events because it seems that system always indicates its press by application command event type as well. I have no chance to test this with a mouse having back/forward buttons nor with such a keyboard.
Attachment #348688 -
Flags: review?(emaijala)
![]() |
Assignee | |
Updated•17 years ago
|
Flags: wanted1.9.0.x?
Flags: wanted-firefox3.1?
Comment 16•17 years ago
|
||
Or perhaps OnKeyDown shouldn't just call DispatchCommandEvent at all?
So basically removing #ifdef VK_BROWSER_BACK...#endif.
(I don't have windows+right kind of keyboard to test)
Updated•17 years ago
|
Attachment #348688 -
Flags: review?(emaijala) → review-
Comment 17•17 years ago
|
||
Comment on attachment 348688 [details] [diff] [review]
v1
I believe Smaug is right, though it seems the only way to be sure is remove the whole block, check it in and hope nothing regresses. I don't think we need to prevent the keys from being dispatched, or then we should do that consistently to all such keys.
![]() |
Assignee | |
Comment 18•17 years ago
|
||
This patch removes the special handling of back and forward keys from both OnKeyDown/Up. It seems to work the same way as the previos patch.
Attachment #348688 -
Attachment is obsolete: true
Attachment #348826 -
Flags: review?(emaijala)
Updated•17 years ago
|
Attachment #348826 -
Flags: review?(emaijala) → review+
Comment 19•17 years ago
|
||
I just posted the patch to TryServer so that anyone with right kind of
keyboard can test the patch even before it lands trunk.
https://build.mozilla.org/tryserver-builds/2008-11-19_03:05-opettay@mozilla.com-win_b_f/
The Windows build isn't ready yet.
![]() |
Assignee | |
Updated•17 years ago
|
Attachment #348826 -
Flags: superreview?(roc)
Attachment #348826 -
Flags: superreview?(roc) → superreview+
![]() |
Assignee | |
Updated•17 years ago
|
Attachment #348826 -
Flags: approval1.9.0.5?
Comment 20•17 years ago
|
||
Comment on attachment 348826 [details] [diff] [review]
v2
Pushing out nomination since 1.9.0.5 is basically code frozen.
Attachment #348826 -
Flags: approval1.9.0.5? → approval1.9.0.6?
![]() |
Assignee | |
Updated•17 years ago
|
Attachment #348826 -
Flags: approval1.9.1?
Comment 21•17 years ago
|
||
(In reply to comment #19)
> I just posted the patch to TryServer so that anyone with right kind of
> keyboard can test the patch even before it lands trunk.
> https://build.mozilla.org/tryserver-builds/2008-11-19_03:05-opettay@mozilla.com-win_b_f/
>
> The Windows build isn't ready yet.
Did anyone do this? Do we know that this patch works?
Updated•17 years ago
|
Attachment #348826 -
Flags: approval1.9.1?
Attachment #348826 -
Flags: approval1.9.1-
Attachment #348826 -
Flags: approval1.9.0.6?
Attachment #348826 -
Flags: approval1.9.0.6-
Comment 22•17 years ago
|
||
Comment on attachment 348826 [details] [diff] [review]
v2
Not approved until someone answers my question in the previous comment; feel free to renominate once that's done.
Updated•17 years ago
|
Flags: wanted1.9.0.x? → wanted1.9.0.x+
Updated•17 years ago
|
Component: Keyboard Navigation → Widget: Win32
Flags: wanted-firefox3.1?
Product: Firefox → Core
QA Contact: keyboard.navigation → win32
![]() |
Assignee | |
Updated•16 years ago
|
Attachment #348826 -
Flags: approval1.9.1?
Attachment #348826 -
Flags: approval1.9.1-
Attachment #348826 -
Flags: approval1.9.0.6?
Attachment #348826 -
Flags: approval1.9.0.6-
![]() |
Assignee | |
Comment 23•16 years ago
|
||
Comment on attachment 348826 [details] [diff] [review]
v2
Just confirmed with testing build and keyboard with BACK/FORWARD keys: FF 3.0.5 - skips by two, testing build - skips by one. Renominating, unfortunately too late for 3.0.6.
Updated•16 years ago
|
Attachment #348826 -
Flags: approval1.9.0.6? → approval1.9.0.7?
Comment 24•16 years ago
|
||
Comment on attachment 348826 [details] [diff] [review]
v2
Moving nomination to 1.9.0.7.
Comment 25•16 years ago
|
||
Why hasn't this landed on trunk yet?
![]() |
Assignee | |
Comment 26•16 years ago
|
||
(In reply to comment #25)
> Why hasn't this landed on trunk yet?
Landed on trunk as http://hg.mozilla.org/mozilla-central/rev/19757a81c07c.
Comment 27•16 years ago
|
||
(In reply to comment #26)
> Landed on trunk as http://hg.mozilla.org/mozilla-central/rev/19757a81c07c.
RESOLVED FIXED, then.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago → 16 years ago
Resolution: --- → FIXED
Whiteboard: [needs 1.9.1 approval, baking]
Comment 28•16 years ago
|
||
Comment on attachment 348826 [details] [diff] [review]
v2
We'll wait until after 1.9.1 to approve.
Attachment #348826 -
Flags: approval1.9.0.7?
Comment 29•16 years ago
|
||
Comment on attachment 348826 [details] [diff] [review]
v2
a191=beltzner
Can we get a followup test for this (and perhaps other keybindings as well) please?
Attachment #348826 -
Flags: approval1.9.1? → approval1.9.1+
![]() |
Assignee | |
Comment 31•16 years ago
|
||
I don't think I can create an automated test for this. If this needs a litmus test, please add it someone, I wasn't able to find a way to add a new test. I can provide exact and simple STR if needed.
Whiteboard: [needs 1.9.1 approval, baking] → [needs 1.9.1 landing]
![]() |
Assignee | |
Comment 32•16 years ago
|
||
Keywords: fixed1.9.1
Whiteboard: [needs 1.9.1 landing]
Comment 33•16 years ago
|
||
I'm getting this on my Thinkpad T60P, Windows XP laptop, on Google search results.
Small note: Strangely, it works fine on google.com/firefox.
Comment 34•16 years ago
|
||
Have you tested it in a blank profile:
http://support.mozilla.com/en-US/kb/Managing+profiles#Starting_the_Profile_Manager
with the latest trunk:
http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/
?
Comment 35•16 years ago
|
||
Okay, it's good in the latest trunk.
I am running 3.0.11.
Updated•13 years ago
|
Flags: in-litmus?
You need to log in
before you can comment on or make changes to this bug.
Description
•