From 4d1c5b09c3ecf1e2250374d72e38c2a9611c2d70 Mon Sep 17 00:00:00 2001 From: Jesse Jiang Date: Wed, 31 Aug 2016 17:20:19 +1000 Subject: [PATCH] Fix entry cannot lost focus issue for iOS and Android Add testing demo for entry. --- .../SlideOverKitDroidHandler.cs | 7 +++++ SlideOverKit.iOS/SlideOverKitiOSHandler.cs | 1 + .../Pages/PopOverView.xaml | 1 + .../Pages/RightSideMasterPage.xaml | 27 +++++++------------ 4 files changed, 19 insertions(+), 17 deletions(-) diff --git a/SlideOverKit.Droid/SlideOverKitDroidHandler.cs b/SlideOverKit.Droid/SlideOverKitDroidHandler.cs index e9ffd51..7818188 100644 --- a/SlideOverKit.Droid/SlideOverKitDroidHandler.cs +++ b/SlideOverKit.Droid/SlideOverKitDroidHandler.cs @@ -5,6 +5,8 @@ using Android.Animation; using System.Linq; using Android.Util; +using Android.Views.InputMethods; +using Android.Content; namespace SlideOverKit.Droid { @@ -211,7 +213,12 @@ void HideBackgroundForPopup () { _currentPopup = null; if (_popupRenderer != null) { + if (_popupRenderer.ViewGroup.HasFocus) { + InputMethodManager inputManager = (InputMethodManager)Forms.Context.GetSystemService (Context.InputMethodService); + inputManager.HideSoftInputFromWindow (_popupRenderer.ViewGroup.WindowToken, HideSoftInputFlags.None); + } _pageRenderer.RemoveView (_popupRenderer.ViewGroup); + _popupRenderer.Dispose(); _popupRenderer = null; } if (_backgroundOverlay != null) { diff --git a/SlideOverKit.iOS/SlideOverKitiOSHandler.cs b/SlideOverKit.iOS/SlideOverKitiOSHandler.cs index 597bba2..837de42 100644 --- a/SlideOverKit.iOS/SlideOverKitiOSHandler.cs +++ b/SlideOverKit.iOS/SlideOverKitiOSHandler.cs @@ -63,6 +63,7 @@ void HideBackgroundOverlay () _backgroundOverlay.Dispose (); _backgroundOverlay = null; } + _menuOverlayRenderer.NativeView.EndEditing (true); } void HideBackgroundForPopup () diff --git a/SlideOverKitMoreSamples/SlideOverKit.Sample/Pages/PopOverView.xaml b/SlideOverKitMoreSamples/SlideOverKit.Sample/Pages/PopOverView.xaml index dc349bf..bebadfb 100755 --- a/SlideOverKitMoreSamples/SlideOverKit.Sample/Pages/PopOverView.xaml +++ b/SlideOverKitMoreSamples/SlideOverKit.Sample/Pages/PopOverView.xaml @@ -2,6 +2,7 @@