diff options
author | Seonggoo Kang <seonggoo.kang@lge.com> | 2014-12-24 13:55:50 +0900 |
---|---|---|
committer | Seonggoo Kang <seonggoo.kang@lge.com> | 2014-12-24 14:05:17 +0900 |
commit | 72745fffe8d43b12ebb753b562191e319e5c1cda (patch) | |
tree | 5804bdb9e772f39e1888f0574e575960fa936579 /core/java/android/inputmethodservice | |
parent | 5e1e38ccdd3da34f65a642dc25b5b2b5cf2b6059 (diff) | |
download | frameworks_base-72745fffe8d43b12ebb753b562191e319e5c1cda.zip frameworks_base-72745fffe8d43b12ebb753b562191e319e5c1cda.tar.gz frameworks_base-72745fffe8d43b12ebb753b562191e319e5c1cda.tar.bz2 |
Prevent duplicated registration of OnComputeInternalInsetsListener
OnComputeInternalInsetsListener is added when initViews is called,
and initViews is called by onCreate and onConfigurationChanged.
But it is removed only by onDestroy.
Therefore listeners are accumulated and it results performance issue.
So before adding, remove mInsetListener that was previously added.
Change-Id: I494d3f1875613d73d3f9b8e2af286b5800f03196
Diffstat (limited to 'core/java/android/inputmethodservice')
-rw-r--r-- | core/java/android/inputmethodservice/InputMethodService.java | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/core/java/android/inputmethodservice/InputMethodService.java b/core/java/android/inputmethodservice/InputMethodService.java index 2eb42a7..f218b65 100644 --- a/core/java/android/inputmethodservice/InputMethodService.java +++ b/core/java/android/inputmethodservice/InputMethodService.java @@ -708,6 +708,7 @@ public class InputMethodService extends AbstractInputMethodService { mRootView.setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION); mWindow.setContentView(mRootView); + mRootView.getViewTreeObserver().removeOnComputeInternalInsetsListener(mInsetsComputer); mRootView.getViewTreeObserver().addOnComputeInternalInsetsListener(mInsetsComputer); if (Settings.Global.getInt(getContentResolver(), Settings.Global.FANCY_IME_ANIMATIONS, 0) != 0) { |