From c4eeeba93240ea00e651460e73fc4d1e40822854 Mon Sep 17 00:00:00 2001 From: Chia-liang Kao Date: Wed, 18 Dec 2013 00:33:43 -0800 Subject: [PATCH 1/2] chore($sniffer): make android variable public --- src/ng/sniffer.js | 1 + test/ng/snifferSpec.js | 1 + 2 files changed, 2 insertions(+) diff --git a/src/ng/sniffer.js b/src/ng/sniffer.js index 0ea8d82306ae..25196cffa1ff 100644 --- a/src/ng/sniffer.js +++ b/src/ng/sniffer.js @@ -85,6 +85,7 @@ function $SnifferProvider() { vendorPrefix: vendorPrefix, transitions : transitions, animations : animations, + android: android, msie : msie, msieDocumentMode: documentMode }; diff --git a/test/ng/snifferSpec.js b/test/ng/snifferSpec.js index 8b3d3ffd046f..4fc11544ed9a 100644 --- a/test/ng/snifferSpec.js +++ b/test/ng/snifferSpec.js @@ -303,6 +303,7 @@ describe('$sniffer', function() { }); inject(function($sniffer) { expect($sniffer.transitions).toBe(true); + expect($sniffer.android).toBe(2); }); }); From 8825b8c567ebb8994f25da577c4189b98d464b45 Mon Sep 17 00:00:00 2001 From: Chia-liang Kao Date: Wed, 18 Dec 2013 00:28:35 -0800 Subject: [PATCH 2/2] fix(input): do not hold input for comopsition on android Workaround for chrome for android until #2129 is ready. Closes #5308, #5323 --- src/ng/directive/input.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/ng/directive/input.js b/src/ng/directive/input.js index fdbefe2fcade..6a974d9dae02 100644 --- a/src/ng/directive/input.js +++ b/src/ng/directive/input.js @@ -395,15 +395,17 @@ function textInputType(scope, element, attr, ctrl, $sniffer, $browser) { // In composition mode, users are still inputing intermediate text buffer, // hold the listener until composition is done. // More about composition events: https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent - var composing = false; + if (!$sniffer.android) { + var composing = false; - element.on('compositionstart', function() { - composing = true; - }); + element.on('compositionstart', function(data) { + composing = true; + }); - element.on('compositionend', function() { - composing = false; - }); + element.on('compositionend', function() { + composing = false; + }); + } var listener = function() { if (composing) return;