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

This commit is contained in:
mozilla.mano%sent.com 2005-06-29 14:20:57 +00:00
Родитель ca587d4960
Коммит e237b71662
6 изменённых файлов: 6 добавлений и 20 удалений

Просмотреть файл

@ -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);
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
}
}
break;
#endif
case NS_KEY_UP:
if (NS_KEY_EVENT == aEvent->eventStructType) {

Просмотреть файл

@ -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>

Просмотреть файл

@ -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);

Просмотреть файл

@ -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>

Просмотреть файл

@ -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

Просмотреть файл

@ -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>