Loading libs/libGoogleFeed.jar +26 KiB (49.7 KiB) File changed.No diff preview for this file type. View original file View changed file src/com/android/launcher3/lineage/LineageLauncher.java +8 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,14 @@ import com.android.launcher3.Launcher; public class LineageLauncher extends Launcher { private final LineageLauncherCallbacks mCallbacks; public LineageLauncher() { setLauncherCallbacks(new LineageLauncherCallbacks(this)); mCallbacks = new LineageLauncherCallbacks(this); setLauncherCallbacks(mCallbacks); } public LineageLauncherCallbacks getCallbacks() { return mCallbacks; } } src/com/android/launcher3/lineage/LineageLauncherCallbacks.java +94 −58 Original line number Diff line number Diff line Loading @@ -17,11 +17,15 @@ package com.android.launcher3.lineage; import android.content.Intent; import android.content.SharedPreferences; import android.content.SharedPreferences.OnSharedPreferenceChangeListener; import android.os.Bundle; import android.os.Handler; import com.android.launcher3.AppInfo; import com.android.launcher3.DeviceProfile; import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherCallbacks; import com.android.launcher3.settings.SettingsActivity; import com.android.launcher3.Utilities; import com.google.android.libraries.gsa.launcherclient.LauncherClient; Loading @@ -31,22 +35,28 @@ import java.io.PrintWriter; import java.util.ArrayList; public class LineageLauncherCallbacks implements LauncherCallbacks, SharedPreferences.OnSharedPreferenceChangeListener { OnSharedPreferenceChangeListener, OnDeviceProfileChangeListener { public static final String KEY_ENABLE_MINUS_ONE = "pref_enable_minus_one"; public static final String SEARCH_PACKAGE = "com.google.android.googlequicksearchbox"; private final LineageLauncher mLauncher; private OverlayCallbackImpl mOverlayCallbacks; private LauncherClient mLauncherClient; private boolean mStarted; private boolean mResumed; private boolean mAlreadyOnHome; private boolean mDeferCallbacks; public LineageLauncherCallbacks(LineageLauncher launcher) { mLauncher = launcher; } public void deferCallbacksUntilNextResumeOrStop() { mDeferCallbacks = true; } public LauncherClient getLauncherClient() { return mLauncherClient; } @Override public void onCreate(Bundle savedInstanceState) { SharedPreferences prefs = Utilities.getPrefs(mLauncher); Loading @@ -54,80 +64,118 @@ public class LineageLauncherCallbacks implements LauncherCallbacks, mLauncherClient = new LauncherClient(mLauncher, mOverlayCallbacks, getClientOptions(prefs)); mOverlayCallbacks.setClient(mLauncherClient); prefs.registerOnSharedPreferenceChangeListener(this); mLauncher.addOnDeviceProfileChangeListener(this); } @Override public void onResume() { mResumed = true; if (mStarted) { mAlreadyOnHome = true; public void onDetachedFromWindow() { mLauncherClient.onDetachedFromWindow(); } mLauncherClient.onResume(); @Override public void onAttachedToWindow() { mLauncherClient.onAttachedToWindow(); } @Override public void onStart() { mStarted = true; mLauncherClient.onStart(); public void onHomeIntent(boolean internalStateHandled) { mLauncherClient.hideOverlay(mLauncher.isStarted() && !mLauncher.isForceInvisible()); } @Override public void onStop() { mStarted = false; if (!mResumed) { mAlreadyOnHome = false; public void onResume() { Handler handler = mLauncher.getDragLayer().getHandler(); if (mDeferCallbacks) { if (handler == null) { // Finish defer if we are not attached to window. checkIfStillDeferred(); } else { // Wait one frame before checking as we can get multiple resume-pause events // in the same frame. handler.post(this::checkIfStillDeferred); } } else { mLauncherClient.onResume(); } mLauncherClient.onStop(); } @Override public void onPause() { mResumed = false; if (!mDeferCallbacks) { mLauncherClient.onPause(); } } @Override public void onDestroy() { mLauncherClient.onDestroy(); Utilities.getPrefs(mLauncher).unregisterOnSharedPreferenceChangeListener(this); public void onStart() { if (!mDeferCallbacks) { mLauncherClient.onStart(); } } @Override public void onSaveInstanceState(Bundle outState) { public void onStop() { if (mDeferCallbacks) { checkIfStillDeferred(); } else { mLauncherClient.onStop(); } } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { public void onDeviceProfileChanged(DeviceProfile dp) { mLauncherClient.reattachOverlay(); } private void checkIfStillDeferred() { if (!mDeferCallbacks) { return; } if (!mLauncher.hasBeenResumed() && mLauncher.isStarted()) { return; } mDeferCallbacks = false; // Move the client to the correct state. Calling the same method twice is no-op. if (mLauncher.isStarted()) { mLauncherClient.onStart(); } if (mLauncher.hasBeenResumed()) { mLauncherClient.onResume(); } else { mLauncherClient.onPause(); } if (!mLauncher.isStarted()) { mLauncherClient.onStop(); } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { public void onDestroy() { mLauncherClient.onDestroy(); Utilities.getPrefs(mLauncher).unregisterOnSharedPreferenceChangeListener(this); } @Override public void onAttachedToWindow() { mLauncherClient.onAttachedToWindow(); public void onSharedPreferenceChanged(SharedPreferences prefs, String key) { if (KEY_ENABLE_MINUS_ONE.equals(key)) { mLauncherClient.setClientOptions(getClientOptions(prefs)); } } @Override public void onDetachedFromWindow() { mLauncherClient.onDetachedFromWindow(); } public void onSaveInstanceState(Bundle outState) { } @Override public void dump(String prefix, FileDescriptor fd, PrintWriter w, String[] args) { public void onActivityResult(int requestCode, int resultCode, Intent data) { } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { } @Override public void onHomeIntent(boolean internalStateHandled) { mLauncherClient.hideOverlay(mAlreadyOnHome); public void dump(String prefix, FileDescriptor fd, PrintWriter w, String[] args) { mLauncherClient.dump(prefix, w); } @Override Loading @@ -136,31 +184,19 @@ public class LineageLauncherCallbacks implements LauncherCallbacks, } @Override public void onTrimMemory(int level) { } public void onTrimMemory(int level) { } @Override public void onLauncherProviderChange() { } public void onLauncherProviderChange() { } @Override public boolean startSearch(String initialQuery, boolean selectInitialQuery, Bundle appSearchData) { return false; } @Override public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { if (SettingsActivity.KEY_MINUS_ONE.equals(key)) { mLauncherClient.setClientOptions(getClientOptions(sharedPreferences)); } } private LauncherClient.ClientOptions getClientOptions(SharedPreferences prefs) { boolean hasPackage = LineageUtils.hasPackageInstalled(mLauncher, SEARCH_PACKAGE); boolean isEnabled = prefs.getBoolean(SettingsActivity.KEY_MINUS_ONE, true); return new LauncherClient.ClientOptions(hasPackage && isEnabled, return new LauncherClient.ClientOptions( prefs.getBoolean(KEY_ENABLE_MINUS_ONE, true), true, /* enableHotword */ true /* enablePrewarming */ ); Loading Loading
libs/libGoogleFeed.jar +26 KiB (49.7 KiB) File changed.No diff preview for this file type. View original file View changed file
src/com/android/launcher3/lineage/LineageLauncher.java +8 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,14 @@ import com.android.launcher3.Launcher; public class LineageLauncher extends Launcher { private final LineageLauncherCallbacks mCallbacks; public LineageLauncher() { setLauncherCallbacks(new LineageLauncherCallbacks(this)); mCallbacks = new LineageLauncherCallbacks(this); setLauncherCallbacks(mCallbacks); } public LineageLauncherCallbacks getCallbacks() { return mCallbacks; } }
src/com/android/launcher3/lineage/LineageLauncherCallbacks.java +94 −58 Original line number Diff line number Diff line Loading @@ -17,11 +17,15 @@ package com.android.launcher3.lineage; import android.content.Intent; import android.content.SharedPreferences; import android.content.SharedPreferences.OnSharedPreferenceChangeListener; import android.os.Bundle; import android.os.Handler; import com.android.launcher3.AppInfo; import com.android.launcher3.DeviceProfile; import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherCallbacks; import com.android.launcher3.settings.SettingsActivity; import com.android.launcher3.Utilities; import com.google.android.libraries.gsa.launcherclient.LauncherClient; Loading @@ -31,22 +35,28 @@ import java.io.PrintWriter; import java.util.ArrayList; public class LineageLauncherCallbacks implements LauncherCallbacks, SharedPreferences.OnSharedPreferenceChangeListener { OnSharedPreferenceChangeListener, OnDeviceProfileChangeListener { public static final String KEY_ENABLE_MINUS_ONE = "pref_enable_minus_one"; public static final String SEARCH_PACKAGE = "com.google.android.googlequicksearchbox"; private final LineageLauncher mLauncher; private OverlayCallbackImpl mOverlayCallbacks; private LauncherClient mLauncherClient; private boolean mStarted; private boolean mResumed; private boolean mAlreadyOnHome; private boolean mDeferCallbacks; public LineageLauncherCallbacks(LineageLauncher launcher) { mLauncher = launcher; } public void deferCallbacksUntilNextResumeOrStop() { mDeferCallbacks = true; } public LauncherClient getLauncherClient() { return mLauncherClient; } @Override public void onCreate(Bundle savedInstanceState) { SharedPreferences prefs = Utilities.getPrefs(mLauncher); Loading @@ -54,80 +64,118 @@ public class LineageLauncherCallbacks implements LauncherCallbacks, mLauncherClient = new LauncherClient(mLauncher, mOverlayCallbacks, getClientOptions(prefs)); mOverlayCallbacks.setClient(mLauncherClient); prefs.registerOnSharedPreferenceChangeListener(this); mLauncher.addOnDeviceProfileChangeListener(this); } @Override public void onResume() { mResumed = true; if (mStarted) { mAlreadyOnHome = true; public void onDetachedFromWindow() { mLauncherClient.onDetachedFromWindow(); } mLauncherClient.onResume(); @Override public void onAttachedToWindow() { mLauncherClient.onAttachedToWindow(); } @Override public void onStart() { mStarted = true; mLauncherClient.onStart(); public void onHomeIntent(boolean internalStateHandled) { mLauncherClient.hideOverlay(mLauncher.isStarted() && !mLauncher.isForceInvisible()); } @Override public void onStop() { mStarted = false; if (!mResumed) { mAlreadyOnHome = false; public void onResume() { Handler handler = mLauncher.getDragLayer().getHandler(); if (mDeferCallbacks) { if (handler == null) { // Finish defer if we are not attached to window. checkIfStillDeferred(); } else { // Wait one frame before checking as we can get multiple resume-pause events // in the same frame. handler.post(this::checkIfStillDeferred); } } else { mLauncherClient.onResume(); } mLauncherClient.onStop(); } @Override public void onPause() { mResumed = false; if (!mDeferCallbacks) { mLauncherClient.onPause(); } } @Override public void onDestroy() { mLauncherClient.onDestroy(); Utilities.getPrefs(mLauncher).unregisterOnSharedPreferenceChangeListener(this); public void onStart() { if (!mDeferCallbacks) { mLauncherClient.onStart(); } } @Override public void onSaveInstanceState(Bundle outState) { public void onStop() { if (mDeferCallbacks) { checkIfStillDeferred(); } else { mLauncherClient.onStop(); } } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { public void onDeviceProfileChanged(DeviceProfile dp) { mLauncherClient.reattachOverlay(); } private void checkIfStillDeferred() { if (!mDeferCallbacks) { return; } if (!mLauncher.hasBeenResumed() && mLauncher.isStarted()) { return; } mDeferCallbacks = false; // Move the client to the correct state. Calling the same method twice is no-op. if (mLauncher.isStarted()) { mLauncherClient.onStart(); } if (mLauncher.hasBeenResumed()) { mLauncherClient.onResume(); } else { mLauncherClient.onPause(); } if (!mLauncher.isStarted()) { mLauncherClient.onStop(); } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { public void onDestroy() { mLauncherClient.onDestroy(); Utilities.getPrefs(mLauncher).unregisterOnSharedPreferenceChangeListener(this); } @Override public void onAttachedToWindow() { mLauncherClient.onAttachedToWindow(); public void onSharedPreferenceChanged(SharedPreferences prefs, String key) { if (KEY_ENABLE_MINUS_ONE.equals(key)) { mLauncherClient.setClientOptions(getClientOptions(prefs)); } } @Override public void onDetachedFromWindow() { mLauncherClient.onDetachedFromWindow(); } public void onSaveInstanceState(Bundle outState) { } @Override public void dump(String prefix, FileDescriptor fd, PrintWriter w, String[] args) { public void onActivityResult(int requestCode, int resultCode, Intent data) { } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { } @Override public void onHomeIntent(boolean internalStateHandled) { mLauncherClient.hideOverlay(mAlreadyOnHome); public void dump(String prefix, FileDescriptor fd, PrintWriter w, String[] args) { mLauncherClient.dump(prefix, w); } @Override Loading @@ -136,31 +184,19 @@ public class LineageLauncherCallbacks implements LauncherCallbacks, } @Override public void onTrimMemory(int level) { } public void onTrimMemory(int level) { } @Override public void onLauncherProviderChange() { } public void onLauncherProviderChange() { } @Override public boolean startSearch(String initialQuery, boolean selectInitialQuery, Bundle appSearchData) { return false; } @Override public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { if (SettingsActivity.KEY_MINUS_ONE.equals(key)) { mLauncherClient.setClientOptions(getClientOptions(sharedPreferences)); } } private LauncherClient.ClientOptions getClientOptions(SharedPreferences prefs) { boolean hasPackage = LineageUtils.hasPackageInstalled(mLauncher, SEARCH_PACKAGE); boolean isEnabled = prefs.getBoolean(SettingsActivity.KEY_MINUS_ONE, true); return new LauncherClient.ClientOptions(hasPackage && isEnabled, return new LauncherClient.ClientOptions( prefs.getBoolean(KEY_ENABLE_MINUS_ONE, true), true, /* enableHotword */ true /* enablePrewarming */ ); Loading