diff options
author | 2012-05-02 01:42:00 -0700 | |
---|---|---|
committer | 2012-05-02 01:42:00 -0700 | |
commit | 57007ed582fbe89b2f2ac24e06a15a4fb5a948df (patch) | |
tree | 8e8b231f454b5f76f0a8fa534acf521c7b3b99e1 /java/src | |
parent | a1c89d9dbf3d0462b1e83dda8b2e376d7aa9886f (diff) | |
parent | f4cf5b9952ae331806bf656a6f977a5ece47fe80 (diff) | |
download | latinime-57007ed582fbe89b2f2ac24e06a15a4fb5a948df.tar.gz latinime-57007ed582fbe89b2f2ac24e06a15a4fb5a948df.tar.xz latinime-57007ed582fbe89b2f2ac24e06a15a4fb5a948df.zip |
Merge "Workaround return preserved backing view height when the backing view is not ready" into jb-dev
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/LatinIME.java | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 7efdef987..83a28c0f3 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -93,6 +93,9 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen private static final int QUICK_PRESS = 200; private static final int PENDING_IMS_CALLBACK_DURATION = 800; + // TODO: remove this + private static final boolean WORKAROUND_USE_LAST_BACKING_HEIGHT_WHEN_NOT_READY = true; + private static int sLastBackingHeight = 0; /** * The name of the scheme used by the Package Manager to warn of a new package installation, @@ -933,8 +936,15 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen // be considered. // See {@link android.inputmethodservice.InputMethodService#onComputeInsets}. final int extractHeight = isFullscreenMode() ? mExtractArea.getHeight() : 0; - final int backingHeight = (mKeyPreviewBackingView.getVisibility() == View.GONE) ? 0 - : mKeyPreviewBackingView.getHeight(); + final boolean backingGone = mKeyPreviewBackingView.getVisibility() == View.GONE; + int backingHeight = backingGone ? 0 : mKeyPreviewBackingView.getHeight(); + if (WORKAROUND_USE_LAST_BACKING_HEIGHT_WHEN_NOT_READY && !backingGone) { + if (backingHeight <= 0) { + backingHeight = sLastBackingHeight; + } else { + sLastBackingHeight = backingHeight; + } + } final int suggestionsHeight = (mSuggestionsContainer.getVisibility() == View.GONE) ? 0 : mSuggestionsContainer.getHeight(); final int extraHeight = extractHeight + backingHeight + suggestionsHeight; @@ -954,6 +964,11 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen } outInsets.contentTopInsets = touchY; outInsets.visibleTopInsets = touchY; + if (WORKAROUND_USE_LAST_BACKING_HEIGHT_WHEN_NOT_REQADY) { + if (LatinImeLogger.sDBG) { + Log.i(TAG, "--- insets: " + touchY + "," + backingHeight + "," + suggestionsHeight); + } + } } @Override |