Merge "Remove #createBackGestureTfClassifierProvider from SystemUIFactory" into tm-qpr-dev
This commit is contained in:
@@ -18,7 +18,6 @@ package com.android.systemui;
|
||||
|
||||
import android.app.ActivityThread;
|
||||
import android.content.Context;
|
||||
import android.content.res.AssetManager;
|
||||
import android.content.res.Resources;
|
||||
import android.os.Handler;
|
||||
import android.os.HandlerThread;
|
||||
@@ -29,7 +28,6 @@ import com.android.systemui.dagger.DaggerGlobalRootComponent;
|
||||
import com.android.systemui.dagger.GlobalRootComponent;
|
||||
import com.android.systemui.dagger.SysUIComponent;
|
||||
import com.android.systemui.dagger.WMComponent;
|
||||
import com.android.systemui.navigationbar.gestural.BackGestureTfClassifierProvider;
|
||||
import com.android.systemui.screenshot.ScreenshotNotificationSmartActionsProvider;
|
||||
import com.android.wm.shell.dagger.WMShellConcurrencyModule;
|
||||
import com.android.wm.shell.transition.ShellTransitions;
|
||||
@@ -251,13 +249,4 @@ public class SystemUIFactory {
|
||||
Context context, Executor executor, Handler uiHandler) {
|
||||
return new ScreenshotNotificationSmartActionsProvider();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates an instance of BackGestureTfClassifierProvider.
|
||||
* This method is overridden in vendor specific implementation of Sys UI.
|
||||
*/
|
||||
public BackGestureTfClassifierProvider createBackGestureTfClassifierProvider(
|
||||
AssetManager am, String modelName) {
|
||||
return new BackGestureTfClassifierProvider();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@ import android.content.pm.IPackageManager;
|
||||
import android.content.pm.LauncherApps;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.ShortcutManager;
|
||||
import android.content.res.AssetManager;
|
||||
import android.content.res.Resources;
|
||||
import android.hardware.SensorManager;
|
||||
import android.hardware.SensorPrivacyManager;
|
||||
@@ -91,6 +92,7 @@ import com.android.internal.jank.InteractionJankMonitor;
|
||||
import com.android.internal.statusbar.IStatusBarService;
|
||||
import com.android.internal.util.LatencyTracker;
|
||||
import com.android.systemui.Prefs;
|
||||
import com.android.systemui.dagger.qualifiers.Application;
|
||||
import com.android.systemui.dagger.qualifiers.DisplayId;
|
||||
import com.android.systemui.dagger.qualifiers.Main;
|
||||
import com.android.systemui.dagger.qualifiers.TestHarness;
|
||||
@@ -404,6 +406,12 @@ public class FrameworkServicesModule {
|
||||
return context.getResources();
|
||||
}
|
||||
|
||||
@Provides
|
||||
@Application
|
||||
static AssetManager provideAssetManager(@Application Context context) {
|
||||
return context.getAssets();
|
||||
}
|
||||
|
||||
@Provides
|
||||
@Singleton
|
||||
static RoleManager provideRoleManager(Context context) {
|
||||
|
||||
@@ -35,6 +35,7 @@ import com.android.systemui.dock.DockManager;
|
||||
import com.android.systemui.dock.DockManagerImpl;
|
||||
import com.android.systemui.doze.DozeHost;
|
||||
import com.android.systemui.media.dagger.MediaModule;
|
||||
import com.android.systemui.navigationbar.gestural.GestureModule;
|
||||
import com.android.systemui.plugins.qs.QSFactory;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.power.EnhancedEstimates;
|
||||
@@ -94,6 +95,7 @@ import dagger.Provides;
|
||||
* SystemUI code that variants of SystemUI _must_ include to function correctly.
|
||||
*/
|
||||
@Module(includes = {
|
||||
GestureModule.class,
|
||||
MediaModule.class,
|
||||
PowerModule.class,
|
||||
QSModule.class,
|
||||
|
||||
@@ -59,7 +59,6 @@ import com.android.internal.config.sysui.SystemUiDeviceConfigFlags;
|
||||
import com.android.internal.policy.GestureNavigationSettingsObserver;
|
||||
import com.android.internal.util.LatencyTracker;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SystemUIFactory;
|
||||
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||
import com.android.systemui.dagger.qualifiers.Main;
|
||||
import com.android.systemui.flags.FeatureFlags;
|
||||
@@ -96,6 +95,7 @@ import java.util.concurrent.Executor;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Provider;
|
||||
|
||||
/**
|
||||
* Utility class to handle edge swipes for back gesture
|
||||
@@ -196,6 +196,8 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
private final Region mExcludeRegion = new Region();
|
||||
private final Region mUnrestrictedExcludeRegion = new Region();
|
||||
private final LatencyTracker mLatencyTracker;
|
||||
private final Provider<BackGestureTfClassifierProvider>
|
||||
mBackGestureTfClassifierProviderProvider;
|
||||
private final FeatureFlags mFeatureFlags;
|
||||
|
||||
// The left side edge width where touch down is allowed
|
||||
@@ -316,6 +318,7 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
Optional<Pip> pipOptional,
|
||||
FalsingManager falsingManager,
|
||||
LatencyTracker latencyTracker,
|
||||
Provider<BackGestureTfClassifierProvider> backGestureTfClassifierProviderProvider,
|
||||
FeatureFlags featureFlags) {
|
||||
super(broadcastDispatcher);
|
||||
mContext = context;
|
||||
@@ -333,6 +336,7 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
mPipOptional = pipOptional;
|
||||
mFalsingManager = falsingManager;
|
||||
mLatencyTracker = latencyTracker;
|
||||
mBackGestureTfClassifierProviderProvider = backGestureTfClassifierProviderProvider;
|
||||
mFeatureFlags = featureFlags;
|
||||
ComponentName recentsComponentName = ComponentName.unflattenFromString(
|
||||
context.getString(com.android.internal.R.string.config_recentsComponentName));
|
||||
@@ -612,10 +616,7 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
}
|
||||
|
||||
if (newState) {
|
||||
String mlModelName = DeviceConfig.getString(DeviceConfig.NAMESPACE_SYSTEMUI,
|
||||
SystemUiDeviceConfigFlags.BACK_GESTURE_ML_MODEL_NAME, "backgesture");
|
||||
mBackGestureTfClassifierProvider = SystemUIFactory.getInstance()
|
||||
.createBackGestureTfClassifierProvider(mContext.getAssets(), mlModelName);
|
||||
mBackGestureTfClassifierProvider = mBackGestureTfClassifierProviderProvider.get();
|
||||
mMLModelThreshold = DeviceConfig.getFloat(DeviceConfig.NAMESPACE_SYSTEMUI,
|
||||
SystemUiDeviceConfigFlags.BACK_GESTURE_ML_MODEL_THRESHOLD, 0.9f);
|
||||
if (mBackGestureTfClassifierProvider.isActive()) {
|
||||
@@ -1007,6 +1008,8 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
private final Optional<Pip> mPipOptional;
|
||||
private final FalsingManager mFalsingManager;
|
||||
private final LatencyTracker mLatencyTracker;
|
||||
private final Provider<BackGestureTfClassifierProvider>
|
||||
mBackGestureTfClassifierProviderProvider;
|
||||
private final FeatureFlags mFeatureFlags;
|
||||
|
||||
@Inject
|
||||
@@ -1024,6 +1027,8 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
Optional<Pip> pipOptional,
|
||||
FalsingManager falsingManager,
|
||||
LatencyTracker latencyTracker,
|
||||
Provider<BackGestureTfClassifierProvider>
|
||||
backGestureTfClassifierProviderProvider,
|
||||
FeatureFlags featureFlags) {
|
||||
mOverviewProxyService = overviewProxyService;
|
||||
mSysUiState = sysUiState;
|
||||
@@ -1039,6 +1044,7 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
mPipOptional = pipOptional;
|
||||
mFalsingManager = falsingManager;
|
||||
mLatencyTracker = latencyTracker;
|
||||
mBackGestureTfClassifierProviderProvider = backGestureTfClassifierProviderProvider;
|
||||
mFeatureFlags = featureFlags;
|
||||
}
|
||||
|
||||
@@ -1060,6 +1066,7 @@ public class EdgeBackGestureHandler extends CurrentUserTracker
|
||||
mPipOptional,
|
||||
mFalsingManager,
|
||||
mLatencyTracker,
|
||||
mBackGestureTfClassifierProviderProvider,
|
||||
mFeatureFlags);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
/*
|
||||
* Copyright (C) 2022 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.android.systemui.navigationbar.gestural;
|
||||
|
||||
import dagger.Module;
|
||||
import dagger.Provides;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@Module
|
||||
public interface GestureModule {
|
||||
/** */
|
||||
@Provides
|
||||
static BackGestureTfClassifierProvider providsBackGestureTfClassifierProvider() {
|
||||
return new BackGestureTfClassifierProvider();
|
||||
}
|
||||
}
|
||||
@@ -35,6 +35,7 @@ import com.android.systemui.demomode.DemoModeController;
|
||||
import com.android.systemui.dock.DockManager;
|
||||
import com.android.systemui.dock.DockManagerImpl;
|
||||
import com.android.systemui.doze.DozeHost;
|
||||
import com.android.systemui.navigationbar.gestural.GestureModule;
|
||||
import com.android.systemui.plugins.qs.QSFactory;
|
||||
import com.android.systemui.plugins.statusbar.StatusBarStateController;
|
||||
import com.android.systemui.power.EnhancedEstimates;
|
||||
@@ -87,6 +88,7 @@ import dagger.multibindings.IntoSet;
|
||||
* overridden by the System UI implementation.
|
||||
*/
|
||||
@Module(includes = {
|
||||
GestureModule.class,
|
||||
PowerModule.class,
|
||||
QSModule.class,
|
||||
VolumeModule.class,
|
||||
|
||||
Reference in New Issue
Block a user