diff options
author | 2010-05-26 22:56:13 +0900 | |
---|---|---|
committer | 2010-05-27 12:06:58 +0900 | |
commit | f22d479e48c2cd951f64e4f4a2b1202e7860c240 (patch) | |
tree | 57b17867ff0fcc37609191e14e365db9868ccac9 /java/src | |
parent | b72f348467888d6f759f8b287ec94425c2748ec0 (diff) | |
download | latinime-f22d479e48c2cd951f64e4f4a2b1202e7860c240.tar.gz latinime-f22d479e48c2cd951f64e4f4a2b1202e7860c240.tar.xz latinime-f22d479e48c2cd951f64e4f4a2b1202e7860c240.zip |
Log and UI fix
- add Log entry for the setting of auto completion
- fix the parameter names
- reduce the time to commit
- copy popup window's resources from framework
- change extention window to use the current layout
Change-Id: I5f52c41dc8027c28a874ba8f198471eb3c9bdd1e
Diffstat (limited to 'java/src')
3 files changed, 35 insertions, 15 deletions
diff --git a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java index d90261935..c8e226d75 100644 --- a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java +++ b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java @@ -378,6 +378,7 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha } mInputView = (LatinKeyboardView) mInputMethodService.getLayoutInflater().inflate( LAYOUTS[newLayout], null); + mInputView.setExtentionLayoutResId(LAYOUTS[newLayout]); mInputView.setOnKeyboardActionListener(mInputMethodService); mLayoutId = newLayout; } diff --git a/java/src/com/android/inputmethod/latin/LatinImeLogger.java b/java/src/com/android/inputmethod/latin/LatinImeLogger.java index dcd1962c0..747340eea 100644 --- a/java/src/com/android/inputmethod/latin/LatinImeLogger.java +++ b/java/src/com/android/inputmethod/latin/LatinImeLogger.java @@ -35,18 +35,21 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang private static final long MINIMUMSENDINTERVAL = 300 * DateUtils.SECOND_IN_MILLIS; // 300 sec private static final long MINIMUMCOUNTINTERVAL = 20 * DateUtils.SECOND_IN_MILLIS; // 20 sec + private static final long MINIMUMSENDSIZE = 40; private static final char SEPARATER = ';'; private static final int ID_CLICKSUGGESTION = 0; - private static final int ID_AUTOSUGGESTION = 1; - private static final int ID_AUTOSUGGESTIONCANCELED = 2; + private static final int ID_AUTOSUGGESTIONCANCELLED = 1; + private static final int ID_AUTOSUGGESTION = 2; private static final int ID_INPUT_COUNT = 3; private static final int ID_DELETE_COUNT = 4; private static final int ID_WORD_COUNT = 5; private static final int ID_ACTUAL_CHAR_COUNT = 6; private static final int ID_THEME_ID = 7; + private static final int ID_SETTING_AUTO_COMPLETE = 8; private static final String PREF_ENABLE_LOG = "enable_logging"; private static final String PREF_DEBUG_MODE = "debug_mode"; + private static final String PREF_AUTO_COMPLETE = "auto_complete"; public static boolean sLogEnabled = true; private static LatinImeLogger sLatinImeLogger = new LatinImeLogger(); @@ -132,12 +135,7 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang if (sDBG) { Log.d(TAG, "Check String safety: " + s); } - for (int i = 0; i < s.length(); ++i) { - if (!Character.isDigit(s.charAt(i))) { - return true; - } - } - return false; + return !TextUtils.isDigitsOnly(s); } private void addCountEntry(long time) { @@ -167,6 +165,16 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang new String[] {mThemeId})); } + private void addSettingsEntry(long time) { + if (sDBG) { + Log.d(TAG, "Log settings. (1)"); + } + final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext); + mLogBuffer.add(new LogEntry (time, ID_SETTING_AUTO_COMPLETE, + new String[] {String.valueOf(prefs.getBoolean(PREF_AUTO_COMPLETE, + mContext.getResources().getBoolean(R.bool.enable_autocorrect)))})); + } + private void flushPrivacyLogSafely() { if (sDBG) { Log.d(TAG, "Log theme Id. (" + mPrivacyLogBuffer.size() + ")"); @@ -191,7 +199,6 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang if (((mLastTimeActive - mLastTimeCountEntry) > MINIMUMCOUNTINTERVAL) || (mDeleteCount == 0 && mInputCount == 0)) { addCountEntry(mLastTimeActive); - addThemeIdEntry(mLastTimeActive); } mDeleteCount += (Integer)data; break; @@ -199,7 +206,6 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang if (((mLastTimeActive - mLastTimeCountEntry) > MINIMUMCOUNTINTERVAL) || (mDeleteCount == 0 && mInputCount == 0)) { addCountEntry(mLastTimeActive); - addThemeIdEntry(mLastTimeActive); } mInputCount += (Integer)data; break; @@ -223,7 +229,7 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang } } break; - case ID_AUTOSUGGESTIONCANCELED: + case ID_AUTOSUGGESTIONCANCELLED: --mWordCount; dataStrings = (String[]) data; if (dataStrings.length < 2) { @@ -258,6 +264,7 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang long now = System.currentTimeMillis(); addCountEntry(now); addThemeIdEntry(now); + addSettingsEntry(now); String s = LogSerializer.createStringFromEntries(mLogBuffer); if (!TextUtils.isEmpty(s)) { if (sDBG) { @@ -307,6 +314,7 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang } else if (KeyboardSwitcher.PREF_KEYBOARD_LAYOUT.equals(key)) { mThemeId = sharedPreferences.getString(KeyboardSwitcher.PREF_KEYBOARD_LAYOUT, KeyboardSwitcher.DEFAULT_LAYOUT_ID); + addThemeIdEntry(mLastTimeActive); } else if (PREF_DEBUG_MODE.equals(key)) { sDBG = sharedPreferences.getBoolean(PREF_DEBUG_MODE, sDBG); } @@ -318,7 +326,11 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang public static void commit() { if (sLogEnabled) { - sLatinImeLogger.commitInternal(); + if (System.currentTimeMillis() - sLatinImeLogger.mLastTimeActive > MINIMUMCOUNTINTERVAL + || (sLatinImeLogger.mLogBuffer.size() + + sLatinImeLogger.mPrivacyLogBuffer.size() > MINIMUMSENDSIZE)) { + sLatinImeLogger.commitInternal(); + } } } @@ -337,7 +349,7 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang sLastAutoSuggestBefore = before; sLastAutoSuggestAfter = after; } - sLatinImeLogger.sendLogToDropBox(ID_AUTOSUGGESTIONCANCELED, strings); + sLatinImeLogger.sendLogToDropBox(ID_AUTOSUGGESTION, strings); } } @@ -345,7 +357,7 @@ public class LatinImeLogger implements SharedPreferences.OnSharedPreferenceChang if (sLogEnabled) { if (sLastAutoSuggestBefore != null && sLastAutoSuggestAfter != null) { String[] strings = new String[] {sLastAutoSuggestBefore, sLastAutoSuggestAfter}; - sLatinImeLogger.sendLogToDropBox(ID_AUTOSUGGESTION, strings); + sLatinImeLogger.sendLogToDropBox(ID_AUTOSUGGESTIONCANCELLED, strings); } } } diff --git a/java/src/com/android/inputmethod/latin/LatinKeyboardView.java b/java/src/com/android/inputmethod/latin/LatinKeyboardView.java index 323f4bf6b..6e3226ae5 100644 --- a/java/src/com/android/inputmethod/latin/LatinKeyboardView.java +++ b/java/src/com/android/inputmethod/latin/LatinKeyboardView.java @@ -65,6 +65,8 @@ public class LatinKeyboardView extends KeyboardView { /** The y coordinate of the last row */ private int mLastRowY; + private int mExtensionLayoutResId = 0; + public LatinKeyboardView(Context context, AttributeSet attrs) { super(context, attrs); } @@ -77,6 +79,10 @@ public class LatinKeyboardView extends KeyboardView { mPhoneKeyboard = phoneKeyboard; } + public void setExtentionLayoutResId (int id) { + mExtensionLayoutResId = id; + } + @Override public void setKeyboard(Keyboard k) { super.setKeyboard(k); @@ -294,7 +300,8 @@ public class LatinKeyboardView extends KeyboardView { mExtensionPopup.setBackgroundDrawable(null); LayoutInflater li = (LayoutInflater) getContext().getSystemService( Context.LAYOUT_INFLATER_SERVICE); - mExtension = (LatinKeyboardView) li.inflate(R.layout.input_trans, null); + mExtension = (LatinKeyboardView) li.inflate(mExtensionLayoutResId == 0 ? + R.layout.input_trans : mExtensionLayoutResId, null); mExtension.setExtensionType(true); mExtension.setOnKeyboardActionListener( new ExtensionKeyboardListener(getOnKeyboardActionListener())); |