diff --git a/javascript/atoms/action.js b/javascript/atoms/action.js index 204cd73323848..a32a495bb1a6e 100644 --- a/javascript/atoms/action.js +++ b/javascript/atoms/action.js @@ -98,6 +98,9 @@ bot.action.clear = function(element) { element.value = ''; } bot.events.fire(element, bot.events.EventType.CHANGE); + if (goog.userAgent.IE) { + bot.events.fire(element, bot.events.EventType.BLUR); + } var body = bot.getDocument().body; if (body) { bot.action.LegacyDevice_.focusOnElement(body); diff --git a/javascript/atoms/test/action_test.html b/javascript/atoms/test/action_test.html index e4f0166233ae8..0a6677caa61c6 100644 --- a/javascript/atoms/test/action_test.html +++ b/javascript/atoms/test/action_test.html @@ -56,6 +56,9 @@ }); } + var expectBlurEvent = goog.partial(expectEvent, + goog.events.EventType.BLUR); + var expectChangeEvent = goog.partial(expectEvent, goog.events.EventType.CHANGE); @@ -68,6 +71,9 @@ count, counts[eventType]); } + var assertBlurFired = goog.partial(assertEventFired, + goog.events.EventType.BLUR); + var assertChangeFired = goog.partial(assertEventFired, goog.events.EventType.CHANGE); @@ -113,8 +119,10 @@ e.value = 'foobar'; e.disabled = false; e.readOnly = false; + expectBlurEvent(e); expectChangeEvent(e); bot.action.clear(e); + assertBlurFired(); assertChangeFired(); assertEquals('', e.value); });