mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-19 10:48:19 +00:00
Merge "Toggle taskbar button nav assistant availability" into tm-qpr-dev am: daffdfa35c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20858639 Change-Id: Id32dcee4a58b87a578c0f08cf6974f0512ba0b1a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -320,6 +320,12 @@ public class TaskbarManager {
|
||||
}
|
||||
}
|
||||
|
||||
public void onLongPressHomeEnabled(boolean assistantLongPressEnabled) {
|
||||
if (mNavButtonController != null) {
|
||||
mNavButtonController.setAssistantLongPressEnabled(assistantLongPressEnabled);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the flag indicating setup UI is visible
|
||||
*/
|
||||
|
||||
@@ -67,6 +67,7 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa
|
||||
|
||||
private long mLastScreenPinLongPress;
|
||||
private boolean mScreenPinned;
|
||||
private boolean mAssistantLongPressEnabled;
|
||||
|
||||
@Override
|
||||
public void dumpLogs(String prefix, PrintWriter pw) {
|
||||
@@ -251,6 +252,10 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa
|
||||
mStatsLogManager = null;
|
||||
}
|
||||
|
||||
public void setAssistantLongPressEnabled(boolean assistantLongPressEnabled) {
|
||||
mAssistantLongPressEnabled = assistantLongPressEnabled;
|
||||
}
|
||||
|
||||
private void logEvent(StatsLogManager.LauncherEvent event) {
|
||||
if (mStatsLogManager == null) {
|
||||
Log.w(TAG, "No stats log manager to log taskbar button event");
|
||||
@@ -289,7 +294,7 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa
|
||||
}
|
||||
|
||||
private void startAssistant() {
|
||||
if (mScreenPinned) {
|
||||
if (mScreenPinned || !mAssistantLongPressEnabled) {
|
||||
return;
|
||||
}
|
||||
Bundle args = new Bundle();
|
||||
|
||||
@@ -216,10 +216,12 @@ public class TouchInteractionService extends Service
|
||||
|
||||
@BinderThread
|
||||
@Override
|
||||
public void onAssistantAvailable(boolean available) {
|
||||
public void onAssistantAvailable(boolean available, boolean longPressHomeEnabled) {
|
||||
MAIN_EXECUTOR.execute(() -> {
|
||||
mDeviceState.setAssistantAvailable(available);
|
||||
TouchInteractionService.this.onAssistantVisibilityChanged();
|
||||
executeForTaskbarManager(() -> mTaskbarManager
|
||||
.onLongPressHomeEnabled(longPressHomeEnabled));
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -18,6 +18,7 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_S
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.Mockito.doReturn;
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.times;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
@@ -103,11 +104,19 @@ public class TaskbarNavButtonControllerTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLongPressHome() {
|
||||
public void testLongPressHome_enabled() {
|
||||
mNavButtonController.setAssistantLongPressEnabled(true /*assistantLongPressEnabled*/);
|
||||
mNavButtonController.onButtonLongClick(BUTTON_HOME, mockView);
|
||||
verify(mockSystemUiProxy, times(1)).startAssistant(any());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLongPressHome_disabled() {
|
||||
mNavButtonController.setAssistantLongPressEnabled(false /*assistantLongPressEnabled*/);
|
||||
mNavButtonController.onButtonLongClick(BUTTON_HOME, mockView);
|
||||
verify(mockSystemUiProxy, never()).startAssistant(any());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testPressHome() {
|
||||
mNavButtonController.onButtonClick(BUTTON_HOME, mockView);
|
||||
|
||||
Reference in New Issue
Block a user