mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-03 12:35:58 +00:00
Bug 875665 - Fix activate action for <textarea/> and add action tests for text input elements. r=surkov
This commit is contained in:
parent
96a9e57beb
commit
2cdb21fcd1
@ -452,13 +452,9 @@ HTMLTextFieldAccessible::GetActionName(uint8_t aIndex, nsAString& aName)
|
||||
NS_IMETHODIMP
|
||||
HTMLTextFieldAccessible::DoAction(uint8_t aIndex)
|
||||
{
|
||||
if (aIndex == 0) {
|
||||
HTMLInputElement* element = HTMLInputElement::FromContent(mContent);
|
||||
if (element)
|
||||
return element->Focus();
|
||||
if (aIndex == 0)
|
||||
return TakeFocus();
|
||||
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
return NS_ERROR_INVALID_ARG;
|
||||
}
|
||||
|
||||
|
@ -5,9 +5,10 @@ const MOUSEDOWN_EVENT = 1;
|
||||
const MOUSEUP_EVENT = 2;
|
||||
const CLICK_EVENT = 4;
|
||||
const COMMAND_EVENT = 8;
|
||||
const FOCUS_EVENT = 16;
|
||||
|
||||
const CLICK_EVENTS = MOUSEDOWN_EVENT | MOUSEUP_EVENT | CLICK_EVENT;
|
||||
const ALL_EVENTS = CLICK_EVENTS | COMMAND_EVENT;
|
||||
const XUL_EVENTS = CLICK_EVENTS | COMMAND_EVENT;
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Public functions
|
||||
@ -74,6 +75,9 @@ function testActions(aArray)
|
||||
|
||||
if (events & COMMAND_EVENT)
|
||||
eventSeq.push(new checkerOfActionInvoker("command", elm));
|
||||
|
||||
if (events & FOCUS_EVENT)
|
||||
eventSeq.push(new focusChecker(elm));
|
||||
}
|
||||
|
||||
if (actionObj.eventSeq)
|
||||
|
@ -11,6 +11,10 @@
|
||||
|
||||
<script type="application/javascript"
|
||||
src="../common.js"></script>
|
||||
<script type="application/javascript"
|
||||
src="../role.js"></script>
|
||||
<script type="application/javascript"
|
||||
src="../states.js"></script>
|
||||
<script type="application/javascript"
|
||||
src="../events.js"></script>
|
||||
<script type="application/javascript"
|
||||
@ -49,7 +53,18 @@
|
||||
ID: "radio",
|
||||
actionName: "select",
|
||||
events: CLICK_EVENTS
|
||||
},
|
||||
{
|
||||
ID: "textarea",
|
||||
actionName: "activate",
|
||||
events: FOCUS_EVENT
|
||||
},
|
||||
{
|
||||
ID: "textinput",
|
||||
actionName: "activate",
|
||||
events: FOCUS_EVENT
|
||||
}
|
||||
|
||||
];
|
||||
document.getElementById("checkbox_mixed").indeterminate = true;
|
||||
|
||||
@ -86,5 +101,9 @@
|
||||
<fieldset>
|
||||
<input id="radio" type="radio">Radio</input>
|
||||
</fieldset>
|
||||
|
||||
<textarea id="textarea" placeholder="What's happening?"></textarea>
|
||||
|
||||
<input id="textinput" type="text">
|
||||
</body>
|
||||
</html>
|
||||
|
@ -48,12 +48,12 @@
|
||||
{
|
||||
ID: "menuitem",
|
||||
actionName: "click",
|
||||
events: ALL_EVENTS
|
||||
events: XUL_EVENTS
|
||||
},
|
||||
{
|
||||
ID: "button",
|
||||
actionName: "press",
|
||||
events: ALL_EVENTS
|
||||
events: XUL_EVENTS
|
||||
},
|
||||
{
|
||||
ID: "buttonmenu",
|
||||
|
Loading…
x
Reference in New Issue
Block a user