angular/angular.js — pull request #9623 by cvn (2014-10-14 22:14:04+00:00)
Title: fix(inputs): add IE-only change/blur handler to input directive

Hello,

In IE versions that use the keydown handler to check for changes to an input, there is a bug when pressing the tab key that will update the input after the change and blur events.

This PR fixes this behavior by cancelling the keydown handler, and updating immediately on change/blur.

See a demo of the bug here (only affects IE8/IE9): http://codepen.io/cvn/full/lvjJr/

Here is a fixed demo with the changes from this PR applied to angular.js: http://codepen.io/cvn/full/cgLns/

Currently, this bug only impacts IE8 & 9, but if PR https://github.com/angular/angular.js/pull/9265 lands, it will affect all versions of IE.

Issue https://github.com/angular/angular.js/issues/1206 may be related, but I'm not sure about this.

I'm submitting this PR to master, but I think it makes sense to include in both 1.2 and 1.3 branches.

Please let me know what you think.