Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f8528914 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka Committed by Android (Google) Code Review
Browse files

Merge "Remove KeyboardSwitcher reference from ResearchLogger" into jb-mr1-dev

parents 07d485d7 c3f78c90
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -528,7 +528,17 @@ public class MainKeyboardView extends KeyboardView implements PointerTracker.Key
        // to properly show the splash screen, which requires that the window token of the
        // KeyboardView be non-null.
        if (ProductionFlag.IS_EXPERIMENTAL) {
            ResearchLogger.getInstance().mainKeyboardView_onAttachedToWindow();
            ResearchLogger.getInstance().mainKeyboardView_onAttachedToWindow(this);
        }
    }

    @Override
    protected void onDetachedFromWindow() {
        super.onDetachedFromWindow();
        // Notify the research logger that the keyboard view has been detached.  This is needed
        // to invalidate the reference of {@link MainKeyboardView} to null.
        if (ProductionFlag.IS_EXPERIMENTAL) {
            ResearchLogger.getInstance().mainKeyboardView_onDetachedFromWindow();
        }
    }

+1 −1
Original line number Diff line number Diff line
@@ -361,7 +361,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
        mPrefs = prefs;
        LatinImeLogger.init(this, prefs);
        if (ProductionFlag.IS_EXPERIMENTAL) {
            ResearchLogger.getInstance().init(this, prefs, mKeyboardSwitcher);
            ResearchLogger.getInstance().init(this, prefs);
        }
        InputMethodManagerCompatWrapper.init(this);
        SubtypeSwitcher.init(this);
+12 −13
Original line number Diff line number Diff line
@@ -54,7 +54,6 @@ import android.widget.Toast;
import com.android.inputmethod.keyboard.Key;
import com.android.inputmethod.keyboard.Keyboard;
import com.android.inputmethod.keyboard.KeyboardId;
import com.android.inputmethod.keyboard.KeyboardSwitcher;
import com.android.inputmethod.keyboard.KeyboardView;
import com.android.inputmethod.keyboard.MainKeyboardView;
import com.android.inputmethod.latin.CollectionUtils;
@@ -138,7 +137,7 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
    // used to check whether words are not unique
    private Suggest mSuggest;
    private Dictionary mDictionary;
    private KeyboardSwitcher mKeyboardSwitcher;
    private MainKeyboardView mMainKeyboardView;
    private InputMethodService mInputMethodService;
    private final Statistics mStatistics;

@@ -152,8 +151,7 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
        return sInstance;
    }

    public void init(final InputMethodService ims, final SharedPreferences prefs,
            KeyboardSwitcher keyboardSwitcher) {
    public void init(final InputMethodService ims, final SharedPreferences prefs) {
        assert ims != null;
        if (ims == null) {
            Log.w(TAG, "IMS is null; logging is off");
@@ -185,7 +183,6 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
        }
        mResearchLogUploader = new ResearchLogUploader(ims, mFilesDir);
        mResearchLogUploader.start();
        mKeyboardSwitcher = keyboardSwitcher;
        mInputMethodService = ims;
        mPrefs = prefs;
    }
@@ -199,10 +196,15 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
        }
    }

    public void mainKeyboardView_onAttachedToWindow() {
    public void mainKeyboardView_onAttachedToWindow(final MainKeyboardView mainKeyboardView) {
        mMainKeyboardView = mainKeyboardView;
        maybeShowSplashScreen();
    }

    public void mainKeyboardView_onDetachedFromWindow() {
        mMainKeyboardView = null;
    }

    private boolean hasSeenSplash() {
        return mPrefs.getBoolean(PREF_RESEARCH_HAS_SEEN_SPLASH, false);
    }
@@ -216,7 +218,8 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
        if (mSplashDialog != null && mSplashDialog.isShowing()) {
            return;
        }
        final IBinder windowToken = mKeyboardSwitcher.getMainKeyboardView().getWindowToken();
        final IBinder windowToken = mMainKeyboardView != null
                ? mMainKeyboardView.getWindowToken() : null;
        if (windowToken == null) {
            return;
        }
@@ -593,14 +596,10 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
        if (!IS_SHOWING_INDICATOR) {
            return;
        }
        if (mKeyboardSwitcher == null) {
            return;
        }
        final KeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
        if (mainKeyboardView == null) {
        if (mMainKeyboardView == null) {
            return;
        }
        mainKeyboardView.invalidateAllKeys();
        mMainKeyboardView.invalidateAllKeys();
    }