From c8e58e58a083c2477c9d9076cacddf99a1f41a67 Mon Sep 17 00:00:00 2001 From: Justin Willis Date: Fri, 15 Apr 2016 14:14:47 -0500 Subject: [PATCH] fix(input): move nested function outside of if statment so as to fix issue related to strict mode There was a white screen issue caused on ios because of a nested function declaration in the input component. I moved this function out of the if statement so as to fix this issue. closes issue 187 on conference app repo --- ionic/components/input/native-input.ts | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/ionic/components/input/native-input.ts b/ionic/components/input/native-input.ts index 7073a665e2..23aa23a030 100644 --- a/ionic/components/input/native-input.ts +++ b/ionic/components/input/native-input.ts @@ -40,20 +40,22 @@ export class NativeInput { var self = this; self.focusChange.emit(true); + + function docTouchEnd(ev) { + var tappedElement: any = ev.target; + if (tappedElement && self.element()) { + if (tappedElement.tagName !== "INPUT" && tappedElement.tagName !== "TEXTAREA") { + self.element().blur(); + } + } + } if (self._blurring) { // automatically blur input if: // 1) this input has focus // 2) the newly tapped document element is not an input console.debug('input blurring enabled'); - function docTouchEnd(ev) { - var tappedElement: any = ev.target; - if (tappedElement && self.element()) { - if (tappedElement.tagName !== 'INPUT' && tappedElement.tagName !== 'TEXTAREA') { - self.element().blur(); - } - } - } + document.addEventListener('touchend', docTouchEnd, true); self._unrefBlur = function() { console.debug('input blurring disabled');