Bug 298894 - [Mac] Make the enter key only (and always) fire the default button. r=mconnor/jhpedemonte, sr=neil, a=bsmedberg.

git-svn-id: svn://10.0.0.236/trunk@175218 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
mozilla.mano%sent.com
2005-06-28 14:59:43 +00:00
parent dd3767d500
commit d741a8b1bc
6 changed files with 6 additions and 20 deletions

View File

@@ -112,6 +112,8 @@ nsButtonBoxFrame::HandleEvent(nsPresContext* aPresContext,
}
break;
// On mac, Return fires the defualt button, not the focused one.
#ifndef XP_MACOSX
case NS_KEY_PRESS:
if (NS_KEY_EVENT == aEvent->eventStructType) {
nsKeyEvent* keyEvent = (nsKeyEvent*)aEvent;
@@ -119,10 +121,12 @@ nsButtonBoxFrame::HandleEvent(nsPresContext* aPresContext,
nsCOMPtr<nsIDOMXULButtonElement> buttonEl(do_QueryInterface(mContent));
if (buttonEl) {
MouseClicked(aPresContext, aEvent);
aEvent->PreventDefault();
}
}
}
break;
#endif
case NS_KEY_UP:
if (NS_KEY_EVENT == aEvent->eventStructType) {

View File

@@ -170,9 +170,6 @@
this.fireAccessKeyButton(buttonBox, charPressedLower);
]]>
</handler>
<handler event="keypress" keycode="VK_RETURN" preventdefault="true"/>
<handler event="keypress" keycode="VK_ENTER" preventdefault="true"/>
</handlers>
</binding>

View File

@@ -47,13 +47,6 @@
if (!document.documentElement.cancelDialog())
event.preventDefault();
})</field>
<field name="enterDefaultAlways">
#ifdef XP_MACOSX
true
#else
false
#endif
</field>
<property name="buttons"
onget="return this.getAttribute('buttons');"
@@ -401,7 +394,7 @@
<parameter name="evt"/>
<body>
<![CDATA[
if (!this.enterDefaultAlways && evt.getPreventDefault())
if (evt.getPreventDefault())
return;
var btn = this.getButton(this.defaultButton);

View File

@@ -182,9 +182,6 @@
this.fireAccessKeyButton(buttonBox, charPressedLower);
]]>
</handler>
<handler event="keypress" keycode="VK_RETURN" preventdefault="true"/>
<handler event="keypress" keycode="VK_ENTER" preventdefault="true"/>
</handlers>
</binding>

View File

@@ -35,7 +35,6 @@
if (!document.documentElement.cancelDialog())
event.preventDefault();
})</field>
<field name="enterDefaultAlways">false</field>
<property name="buttons"
onget="return this.getAttribute('buttons');"
@@ -287,7 +286,7 @@
<parameter name="evt"/>
<body>
<![CDATA[
if (!this.enterDefaultAlways && evt.getPreventDefault())
if (evt.getPreventDefault())
return;
// only accept dialog if accept button is the default

View File

@@ -23,10 +23,6 @@
</xul:hbox>
</content>
<implementation>
<field name="enterDefaultAlways">true</field>
</implementation>
<handlers>
<handler event="keypress" key="." modifiers="meta" phase="capturing" action="this.cancelDialog();"/>
</handlers>