Skip to content

Commit b436822

Browse files
committed
Changing clear element atom to be W3C compliant
1 parent 9c0ca98 commit b436822

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

javascript/atoms/action.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,21 +87,25 @@ bot.action.clear = function(element) {
8787
'Element must be user-editable in order to clear it.');
8888
}
8989

90-
bot.action.LegacyDevice_.focusOnElement(element);
9190
if (element.value) {
91+
bot.action.LegacyDevice_.focusOnElement(element);
9292
element.value = '';
9393
bot.events.fire(element, bot.events.EventType.CHANGE);
94+
bot.events.fire(element, bot.events.EventType.BLUR);
95+
bot.action.LegacyDevice_.focusOnElement(document.body);
9496
} else if (bot.dom.isElement(element, goog.dom.TagName.INPUT) &&
9597
(element.getAttribute('type') && element.getAttribute('type').toLowerCase() == "number")) {
9698
// number input fields that have invalid inputs
9799
// report their value as empty string with no way to tell if there is a
98100
// current value or not
101+
bot.action.LegacyDevice_.focusOnElement(element);
99102
element.value = '';
100103
}
101104

102105
if (bot.dom.isContentEditable(element)) {
103106
// A single space is required, if you put empty string here you'll not be
104107
// able to interact with this element anymore in Firefox.
108+
bot.action.LegacyDevice_.focusOnElement(element);
105109
element.innerHTML = ' ';
106110
// contentEditable does not generate onchange event.
107111
}

0 commit comments

Comments
 (0)