diff options
Diffstat (limited to 'java/src')
7 files changed, 23 insertions, 26 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java index a356eb119..a82fb79bd 100644 --- a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java +++ b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java @@ -33,7 +33,7 @@ import com.android.inputmethod.latin.R; public class MoreKeysKeyboardView extends KeyboardView implements MoreKeysPanel { private final int[] mCoordinates = CoordinateUtils.newInstance(); - private final KeyDetector mKeyDetector; + protected final KeyDetector mKeyDetector; private Controller mController; protected KeyboardActionListener mListener; private int mOriginX; diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java index dcfae739e..91c4319e7 100644 --- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java +++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java @@ -441,10 +441,10 @@ public final class PointerTracker implements PointerTrackerQueue.Element { // Returns true if keyboard has been changed by this callback. private boolean callListenerOnPressAndCheckKeyboardLayoutChange(final Key key) { - if (sInGesture) { + if (sInGesture || mIsDetectingGesture) { return false; } - final boolean ignoreModifierKey = mIsInSlidingKeyInputFromModifier && key.isModifier(); + final boolean ignoreModifierKey = mIsInSlidingKeyInput && key.isModifier(); if (DEBUG_LISTENER) { Log.d(TAG, String.format("[%d] onPress : %s%s%s", mPointerId, KeyDetector.printableCode(key), @@ -468,7 +468,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element { // primaryCode is different from {@link Key#mCode}. private void callListenerOnCodeInput(final Key key, final int primaryCode, final int x, final int y, final long eventTime) { - final boolean ignoreModifierKey = mIsInSlidingKeyInputFromModifier && key.isModifier(); + final boolean ignoreModifierKey = mIsInSlidingKeyInput && key.isModifier(); final boolean altersCode = key.altCodeWhileTyping() && mTimerProxy.isTypingState(); final int code = altersCode ? key.getAltCode() : primaryCode; if (DEBUG_LISTENER) { @@ -500,10 +500,10 @@ public final class PointerTracker implements PointerTrackerQueue.Element { // primaryCode is different from {@link Key#mCode}. private void callListenerOnRelease(final Key key, final int primaryCode, final boolean withSliding) { - if (sInGesture) { + if (sInGesture || mIsDetectingGesture) { return; } - final boolean ignoreModifierKey = mIsInSlidingKeyInputFromModifier && key.isModifier(); + final boolean ignoreModifierKey = mIsInSlidingKeyInput && key.isModifier(); if (DEBUG_LISTENER) { Log.d(TAG, String.format("[%d] onRelease : %s%s%s%s", mPointerId, Constants.printableCode(primaryCode), diff --git a/java/src/com/android/inputmethod/latin/SettingsFragment.java b/java/src/com/android/inputmethod/latin/SettingsFragment.java index 5405a5eb7..a96c997c8 100644 --- a/java/src/com/android/inputmethod/latin/SettingsFragment.java +++ b/java/src/com/android/inputmethod/latin/SettingsFragment.java @@ -16,7 +16,6 @@ package com.android.inputmethod.latin; -import android.app.Activity; import android.app.backup.BackupManager; import android.content.Context; import android.content.Intent; @@ -115,12 +114,8 @@ public final class SettingsFragment extends InputMethodSettingsFragment if (FeedbackUtils.isFeedbackFormSupported()) { feedbackSettings.setOnPreferenceClickListener(new OnPreferenceClickListener() { @Override - public boolean onPreferenceClick(Preference arg0) { - final Activity activity = getActivity(); - FeedbackUtils.showFeedbackForm(activity); - if (!activity.isFinishing()) { - activity.finish(); - } + public boolean onPreferenceClick(final Preference pref) { + FeedbackUtils.showFeedbackForm(getActivity()); return true; } }); @@ -232,10 +227,6 @@ public final class SettingsFragment extends InputMethodSettingsFragment } else if (key.equals(Settings.PREF_SHOW_LANGUAGE_SWITCH_KEY)) { setPreferenceEnabled(Settings.PREF_INCLUDE_OTHER_IMES_IN_LANGUAGE_SWITCH_LIST, Settings.readShowsLanguageSwitchKey(prefs)); - } else if (key.equals(Settings.PREF_GESTURE_INPUT)) { - final boolean gestureInputEnabled = Settings.readGestureInputEnabled(prefs, res); - setPreferenceEnabled(Settings.PREF_GESTURE_PREVIEW_TRAIL, gestureInputEnabled); - setPreferenceEnabled(Settings.PREF_GESTURE_FLOATING_PREVIEW_TEXT, gestureInputEnabled); } else if (key.equals(Settings.PREF_SHOW_SETUP_WIZARD_ICON)) { LauncherIconVisibilityManager.updateSetupWizardIconVisibility(getActivity()); } diff --git a/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java b/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java index 58ec1e83f..467f6a053 100644 --- a/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java +++ b/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java @@ -1467,8 +1467,8 @@ public final class BinaryDictInputOutput { if (null == last) continue; builder.append(new String(last.mCharacters, 0, last.mCharacters.length)); buffer.position(last.mChildrenAddress + headerSize); - groupOffset = last.mChildrenAddress + 1; - i = buffer.readUnsignedByte(); + i = readCharGroupCount(buffer); + groupOffset = last.mChildrenAddress + getGroupCountSize(i); last = null; continue; } @@ -1477,8 +1477,8 @@ public final class BinaryDictInputOutput { if (0 == i && hasChildrenAddress(last.mChildrenAddress)) { builder.append(new String(last.mCharacters, 0, last.mCharacters.length)); buffer.position(last.mChildrenAddress + headerSize); - groupOffset = last.mChildrenAddress + 1; - i = buffer.readUnsignedByte(); + i = readCharGroupCount(buffer); + groupOffset = last.mChildrenAddress + getGroupCountSize(i); last = null; continue; } diff --git a/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java b/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java index 94715cd84..6509f394b 100644 --- a/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java +++ b/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java @@ -46,6 +46,12 @@ public final class MoreSuggestionsView extends MoreKeysKeyboardView { updateKeyDrawParams(keyHeight); } + public void adjustVerticalCorrectionForModalMode() { + // Set vertical correction to zero (Reset more keys keyboard sliding allowance + // {@link R#dimen.more_keys_keyboard_slide_allowance}). + mKeyDetector.setKeyboard(getKeyboard(), -getPaddingLeft(), -getPaddingTop()); + } + @Override public void onCodeInput(final int code, final int x, final int y) { final int index = code - MoreSuggestions.SUGGESTION_CODE_BASE; diff --git a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java index 4ef36fa46..2a21ec2f5 100644 --- a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java +++ b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java @@ -755,8 +755,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick @Override public boolean dispatchTouchEvent(final MotionEvent me) { - if (!mMoreSuggestionsView.isShowingInParent() - || mMoreSuggestionsMode == MORE_SUGGESTIONS_IN_MODAL_MODE) { + if (!mMoreSuggestionsView.isShowingInParent()) { mLastX = (int)me.getX(); mLastY = (int)me.getY(); if (mMoreSuggestionsSlidingDetector.onTouchEvent(me)) { @@ -784,6 +783,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick } else if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_POINTER_UP) { // Decided to be in the modal input mode mMoreSuggestionsMode = MORE_SUGGESTIONS_IN_MODAL_MODE; + mMoreSuggestionsView.adjustVerticalCorrectionForModalMode(); } return true; } diff --git a/java/src/com/android/inputmethod/research/ResearchLogger.java b/java/src/com/android/inputmethod/research/ResearchLogger.java index 320db8123..7a23ddb05 100644 --- a/java/src/com/android/inputmethod/research/ResearchLogger.java +++ b/java/src/com/android/inputmethod/research/ResearchLogger.java @@ -380,6 +380,9 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang requestIndicatorRedraw(); mStatistics.reset(); checkForEmptyEditor(); + if (mFeedbackLogBuffer == null) { + resetFeedbackLogging(); + } if (!isAllowedToLog()) { // Log.w(TAG, "not in usability mode; not logging"); return; @@ -413,9 +416,6 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang } }; } - if (mFeedbackLogBuffer == null) { - resetFeedbackLogging(); - } } private void resetFeedbackLogging() { |