Closed Bug 199737 Opened 21 years ago Closed 21 years ago

in Mailnews, context menu can't be activated with the keyboard (Windows key on the left of the CTRL key) or shift-f10

Categories

(Core :: DOM: UI Events & Focus Handling, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla1.4final

People

(Reporter: pascalc, Assigned: bryner)

References

Details

(Keywords: access, platform-parity, regression)

Attachments

(1 file)

Build ID 2003032808 WinXP

1 open Mailnews
2 select an item in the folder tree for instance
3 hit the context menu key on your keyboard

expected result : a popup menu
actual result : nothing

It works in the browser part. This is a regression since NS7.02 does not have
the bug.
Still seeing it with 2003042208
I think this should be fixed for 1.4 since this release is supposed to be used
as the basis for the next Nerscape release.

This regression breaks section 508 compliance, adding keyword.
Flags: blocking1.4b?
Keywords: sec508
aaron, do you know anything about this?

I see it works in browser, so we should be able to get it to work in the message
pane (which is a browser)

but it appears broken for trees in general.

It doesn't work in history / bookmarks trees, either.
Flags: blocking1.4b?
Flags: blocking1.4b-
Flags: blocking1.4?
Bug 107591 was the bug to get it working in bookmarks.

Both Shift+F10 and the context menu key are supposed to work in outliner. I find
that both work in manage bookmarks.

When testing it in manage bookmarks, it may appear not to work because the menu
will appear under the mouse cursor is, which can be offscreen. It should appear
where the selected item is. That's a different bug.
we should try to get this for 1.4. It doesn't affect linux but I can confirm the
problem on windowsXP with a recent nightly.
Flags: blocking1.4? → blocking1.4+
over to shuehan.

blocks 1.4 (according to asa) so adding nsbeta1

watch out for this issue #175568

we should make sure that this key works for thread pane, folder pane, and
message pane.
Assignee: sspitzer → shliang
Keywords: nsbeta1
Target Milestone: --- → mozilla1.4final
Summary: in Mailnews, context menu can't be activated with the keyboard (Windows key on the left of the CTRL key) → in Mailnews, context menu can't be activated with the keyboard (Windows key on the left of the CTRL key) or shift-f10
stack to right click

XULPopupListenerImpl::LaunchPopup(int 205, int 68) line 491
XULPopupListenerImpl::LaunchPopup(nsIDOMEvent * 0x0463d360) line 405 + 19 bytes
XULPopupListenerImpl::PreLaunchPopup(nsIDOMEvent * 0x0463d360) line 293
XULPopupListenerImpl::ContextMenu(XULPopupListenerImpl * const 0x02f12560,
nsIDOMEvent * 0x0463d360) line 197 + 15 bytes
nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x02f125c0,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44,
nsIDOMEventTarget * 0x04229bc8, unsigned int 2, nsEventStatus * 0x0012f398) line
1480 + 41 bytes
nsXULElement::HandleDOMEvent(nsXULElement * const 0x02f124e0, nsIPresContext *
0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44, unsigned int 2,
nsEventStatus * 0x0012f398) line 3302
nsXULElement::HandleChromeEvent(nsXULElement * const 0x02f124ec, nsIPresContext
* 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44, unsigned int 2,
nsEventStatus * 0x0012f398) line 4446 + 39 bytes
GlobalWindowImpl::HandleDOMEvent(GlobalWindowImpl * const 0x03986b88,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44,
unsigned int 2, nsEventStatus * 0x0012f398) line 841
nsDocument::HandleDOMEvent(nsDocument * const 0x04680190, nsIPresContext *
0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44, unsigned int 2,
nsEventStatus * 0x0012f398) line 3626
nsGenericElement::HandleDOMEvent(nsGenericElement * const 0x0468ddd0,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44,
unsigned int 2, nsEventStatus * 0x0012f398) line 1961 + 47 bytes
nsGenericElement::HandleDOMEvent(nsGenericElement * const 0x03791ec0,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44,
unsigned int 2, nsEventStatus * 0x0012f398) line 1954 + 60 bytes
nsGenericElement::HandleDOMEvent(nsGenericElement * const 0x046c3aa8,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44,
unsigned int 2, nsEventStatus * 0x0012f398) line 1954 + 60 bytes
nsGenericElement::HandleDOMEvent(nsGenericElement * const 0x046c4048,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44,
unsigned int 2, nsEventStatus * 0x0012f398) line 1954 + 60 bytes
nsGenericElement::HandleDOMEvent(nsGenericElement * const 0x046c4600,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x0012ee44,
unsigned int 7, nsEventStatus * 0x0012f398) line 1954 + 60 bytes
nsGenericHTMLElement::HandleDOMEventForAnchors(nsIContent * 0x046c4600,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x00000000,
unsigned int 1, nsEventStatus * 0x0012f398) line 1431 + 32 bytes
nsHTMLAnchorElement::HandleDOMEvent(nsHTMLAnchorElement * const 0x046c4600,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f5a8, nsIDOMEvent * * 0x00000000,
unsigned int 1, nsEventStatus * 0x0012f398) line 355
PresShell::HandleEventInternal(nsEvent * 0x0012f5a8, nsIView * 0x046c1cb8,
unsigned int 1, nsEventStatus * 0x0012f398) line 6380 + 47 bytes
PresShell::HandleEvent(PresShell * const 0x04695944, nsIView * 0x046c1cb8,
nsGUIEvent * 0x0012f5a8, nsEventStatus * 0x0012f398, int 0, int & 1) line 6297 +
25 bytes
nsViewManager::HandleEvent(nsView * 0x046c19c8, nsGUIEvent * 0x0012f5a8, int 0)
line 2292
nsView::HandleEvent(nsViewManager * 0x0468f030, nsGUIEvent * 0x0012f5a8, int 0)
line 308
nsViewManager::DispatchEvent(nsViewManager * const 0x0468f030, nsGUIEvent *
0x0012f5a8, nsEventStatus * 0x0012f4a8) line 2022 + 23 bytes
HandleEvent(nsGUIEvent * 0x0012f5a8) line 82
nsWindow::DispatchEvent(nsWindow * const 0x046c1a94, nsGUIEvent * 0x0012f5a8,
nsEventStatus & nsEventStatus_eIgnore) line 1054 + 10 bytes
nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f5a8) line 1075
nsWindow::DispatchMouseEvent(unsigned int 500, unsigned int 7669382, nsPoint *
0x00000000) line 5196 + 21 bytes
ChildWindow::DispatchMouseEvent(unsigned int 500, unsigned int 7669382, nsPoint
* 0x00000000) line 5453
nsWindow::ProcessMessage(unsigned int 123, unsigned int 7669382, long 39387742,
long * 0x0012fa50) line 4004 + 30 bytes
nsWindow::WindowProc(HWND__ * 0x00750686, unsigned int 123, unsigned int
7669382, long 39387742) line 1348 + 27 bytes
USER32! 77e3a244()
USER32! 77e14730()
USER32! 77e1558a()
NTDLL! 77f91a7f()
USER32! 77e15392()
USER32! 77e1dd30()
USER32! 77e3a244()
USER32! 77e16b21()
USER32! 77e24f4a()
nsWindow::WindowProc(HWND__ * 0x00750686, unsigned int 517, unsigned int 0, long
4456653) line 1355 + 31 bytes
USER32! 77e3a244()
USER32! 77e145e5()
USER32! 77e1a792()
nsAppShellService::Run(nsAppShellService * const 0x01552ee0) line 479
main1(int 2, char * * 0x00271ae0, nsISupports * 0x00f0e170) line 1268 + 32 bytes
main(int 2, char * * 0x00271ae0) line 1647 + 37 bytes
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77ea847c()
stack to the key press

XULPopupListenerImpl::LaunchPopup(int 4440, int 960) line 491
XULPopupListenerImpl::LaunchPopup(nsIDOMEvent * 0x03926a08) line 405 + 19 bytes
XULPopupListenerImpl::PreLaunchPopup(nsIDOMEvent * 0x03926a08) line 293
XULPopupListenerImpl::ContextMenu(XULPopupListenerImpl * const 0x02f12560,
nsIDOMEvent * 0x03926a08) line 197 + 15 bytes
nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x02f125c0,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f78c, nsIDOMEvent * * 0x0012f358,
nsIDOMEventTarget * 0x03926aa8, unsigned int 2, nsEventStatus * 0x0012f548) line
1480 + 41 bytes
nsXULElement::HandleDOMEvent(nsXULElement * const 0x02f124e0, nsIPresContext *
0x0468e838, nsEvent * 0x0012f78c, nsIDOMEvent * * 0x0012f358, unsigned int 2,
nsEventStatus * 0x0012f548) line 3302
nsXULElement::HandleChromeEvent(nsXULElement * const 0x02f124ec, nsIPresContext
* 0x0468e838, nsEvent * 0x0012f78c, nsIDOMEvent * * 0x0012f358, unsigned int 2,
nsEventStatus * 0x0012f548) line 4446 + 39 bytes
GlobalWindowImpl::HandleDOMEvent(GlobalWindowImpl * const 0x03986b88,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f78c, nsIDOMEvent * * 0x0012f358,
unsigned int 2, nsEventStatus * 0x0012f548) line 841
nsDocument::HandleDOMEvent(nsDocument * const 0x04680190, nsIPresContext *
0x0468e838, nsEvent * 0x0012f78c, nsIDOMEvent * * 0x0012f358, unsigned int 2,
nsEventStatus * 0x0012f548) line 3626
nsGenericElement::HandleDOMEvent(nsGenericElement * const 0x0468ddd0,
nsIPresContext * 0x0468e838, nsEvent * 0x0012f78c, nsIDOMEvent * * 0x0012f358,
unsigned int 7, nsEventStatus * 0x0012f548) line 1961 + 47 bytes
PresShell::HandleEventInternal(nsEvent * 0x0012f78c, nsIView * 0x0468f260,
unsigned int 1, nsEventStatus * 0x0012f548) line 6380 + 47 bytes
PresShell::HandleEvent(PresShell * const 0x04695944, nsIView * 0x0468f260,
nsGUIEvent * 0x0012f78c, nsEventStatus * 0x0012f548, int 1, int & 1) line 6297 +
25 bytes
nsViewManager::HandleEvent(nsView * 0x0468f260, nsGUIEvent * 0x0012f78c, int 0)
line 2246
nsView::HandleEvent(nsViewManager * 0x0468f030, nsGUIEvent * 0x0012f78c, int 0)
line 308
nsViewManager::DispatchEvent(nsViewManager * const 0x0468f030, nsGUIEvent *
0x0012f78c, nsEventStatus * 0x0012f68c) line 2022 + 23 bytes
HandleEvent(nsGUIEvent * 0x0012f78c) line 82
nsWindow::DispatchEvent(nsWindow * const 0x0468f30c, nsGUIEvent * 0x0012f78c,
nsEventStatus & nsEventStatus_eIgnore) line 1054 + 10 bytes
nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f78c) line 1075
nsWindow::DispatchMouseEvent(unsigned int 501, unsigned int 6555128, nsPoint *
0x00000000) line 5196 + 21 bytes
ChildWindow::DispatchMouseEvent(unsigned int 501, unsigned int 6555128, nsPoint
* 0x00000000) line 5453
nsWindow::ProcessMessage(unsigned int 123, unsigned int 6555128, long -1, long *
0x0012fc34) line 4004 + 30 bytes
nsWindow::WindowProc(HWND__ * 0x006405f8, unsigned int 123, unsigned int
6555128, long -1) line 1348 + 27 bytes
USER32! 77e3a244()
USER32! 77e145e5()
USER32! 77e1a792()
nsAppShellService::Run(nsAppShellService * const 0x01552ee0) line 479
main1(int 2, char * * 0x00271ae0, nsISupports * 0x00f0e170) line 1268 + 32 bytes
main(int 2, char * * 0x00271ae0) line 1647 + 37 bytes
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77ea847c()
Attached patch patchSplinter Review
shuehan and I came up with this fix... the win32 widget code had been
initializing the point of the contextmenu event incorrectly, I think (the XP
code assumed it would be initialized to 0,0).
Comment on attachment 123066 [details] [diff] [review]
patch

r=shuehan

thanks!
Attachment #123066 - Flags: review+
Comment on attachment 123066 [details] [diff] [review]
patch

thanks bryner!

sr/a=sspitzer for 1.4 final.

who should review?  

does this also fix the shift+f10 case?	(is aEventType == NS_CONTEXTMENU_KEY
for that scenario?)
Attachment #123066 - Flags: superreview+
Attachment #123066 - Flags: approval1.4+
might be a problem on OS/2 as well (just a gut feeling, since I remember seeing
some code, relating to this, that was XP_WIN || XP_OS2, where we'd try to set
focus to the target element or something)

Assignee: shliang → bryner
NS_CONTEXTMENU_KEY is for both, so the context menu key or shift + f10 will now
bring up the context menu in the top left 
checked in.
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
*** Bug 202079 has been marked as a duplicate of this bug. ***
per bug 202079, this is also a problem in editor. ->keybd nav and reopening
since it's still an issue (as discussed with brian).
Status: RESOLVED → REOPENED
Component: Mail Window Front End → Keyboard: Navigation
Keywords: pp
Product: MailNews → Browser
QA Contact: esther → sairuh
Resolution: FIXED → ---
I must have applied this patch by hand at some point and didn't remove the
existing InitEvent() line when doing so, so the event is still initialized with
the bogus point for a context menu event.

Since this patch as it is here is correct and has already gotten r/sr/a, I'll go
ahead and check in the fix.
fix checked in.
Status: REOPENED → RESOLVED
Closed: 21 years ago21 years ago
Resolution: --- → FIXED
vrfy'd fixed with 2003.05.23.09 comm build on win2k.
Status: RESOLVED → VERIFIED
Component: Keyboard: Navigation → User events and focus handling
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: