aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java19
-rw-r--r--java/src/com/android/inputmethod/latin/ResearchLogger.java20
-rw-r--r--java/src/com/android/inputmethod/latin/makedict/MakedictLog.java5
3 files changed, 40 insertions, 4 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 624c322a0..f041f4ecf 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,
@@ -942,8 +945,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;
@@ -963,6 +973,11 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
}
outInsets.contentTopInsets = touchY;
outInsets.visibleTopInsets = touchY;
+ if (WORKAROUND_USE_LAST_BACKING_HEIGHT_WHEN_NOT_READY) {
+ if (LatinImeLogger.sDBG) {
+ Log.i(TAG, "--- insets: " + touchY + "," + backingHeight + "," + suggestionsHeight);
+ }
+ }
}
@Override
diff --git a/java/src/com/android/inputmethod/latin/ResearchLogger.java b/java/src/com/android/inputmethod/latin/ResearchLogger.java
index 92fb0c408..92a9633de 100644
--- a/java/src/com/android/inputmethod/latin/ResearchLogger.java
+++ b/java/src/com/android/inputmethod/latin/ResearchLogger.java
@@ -17,6 +17,7 @@
package com.android.inputmethod.latin;
import android.content.SharedPreferences;
+import android.content.SharedPreferences.Editor;
import android.inputmethodservice.InputMethodService;
import android.os.Build;
import android.os.Handler;
@@ -48,6 +49,7 @@ import java.nio.CharBuffer;
import java.nio.channels.FileChannel;
import java.nio.charset.Charset;
import java.util.Map;
+import java.util.UUID;
/**
* Logs the use of the LatinIME keyboard.
@@ -60,6 +62,7 @@ import java.util.Map;
public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChangeListener {
private static final String TAG = ResearchLogger.class.getSimpleName();
private static final String PREF_USABILITY_STUDY_MODE = "usability_study_mode";
+ private static final String PREF_RESEARCH_LOGGER_UUID_STRING = "pref_research_logger_uuid";
private static final boolean DEBUG = false;
private static final ResearchLogger sInstance = new ResearchLogger(new LogFileManager());
@@ -577,6 +580,8 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
if (UnsLogGroup.LATINIME_ONSTARTINPUTVIEWINTERNAL_ENABLED) {
final StringBuilder builder = new StringBuilder();
builder.append("onStartInputView: editorInfo:");
+ builder.append("\tpackageName=");
+ builder.append(editorInfo.packageName);
builder.append("\tinputType=");
builder.append(Integer.toHexString(editorInfo.inputType));
builder.append("\timeOptions=");
@@ -588,10 +593,23 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
Object value = entry.getValue();
builder.append("=" + ((value == null) ? "<null>" : value.toString()));
}
+ builder.append("\tuuid="); builder.append(getUUID(prefs));
logUnstructured("LatinIME_onStartInputViewInternal", builder.toString());
}
}
+ private static String getUUID(final SharedPreferences prefs) {
+ String uuidString = prefs.getString(PREF_RESEARCH_LOGGER_UUID_STRING, null);
+ if (null == uuidString) {
+ UUID uuid = UUID.randomUUID();
+ uuidString = uuid.toString();
+ Editor editor = prefs.edit();
+ editor.putString(PREF_RESEARCH_LOGGER_UUID_STRING, uuidString);
+ editor.apply();
+ }
+ return uuidString;
+ }
+
public static void latinIME_onUpdateSelection(final int lastSelectionStart,
final int lastSelectionEnd, final int oldSelStart, final int oldSelEnd,
final int newSelStart, final int newSelEnd, final int composingSpanStart,
@@ -801,4 +819,4 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
logUnstructured("SuggestionsView_setSuggestions", mSuggestedWords.toString());
}
}
-} \ No newline at end of file
+}
diff --git a/java/src/com/android/inputmethod/latin/makedict/MakedictLog.java b/java/src/com/android/inputmethod/latin/makedict/MakedictLog.java
index cff8d6fd0..cdc04af10 100644
--- a/java/src/com/android/inputmethod/latin/makedict/MakedictLog.java
+++ b/java/src/com/android/inputmethod/latin/makedict/MakedictLog.java
@@ -20,9 +20,12 @@ package com.android.inputmethod.latin.makedict;
* Wrapper to redirect log events to the right output medium.
*/
public class MakedictLog {
+ private static final boolean DEBUG = false;
private static void print(String message) {
- System.out.println(message);
+ if (DEBUG) {
+ System.out.println(message);
+ }
}
public static void d(String message) {