Merge "Remove Dependency.staticOnConfigurationChanged" into qt-qpr1-dev
This commit is contained in:
@@ -1,21 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (C) 2017 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;
|
|
||||||
|
|
||||||
import android.content.res.Configuration;
|
|
||||||
|
|
||||||
public interface ConfigurationChangedReceiver {
|
|
||||||
void onConfigurationChanged(Configuration newConfiguration);
|
|
||||||
}
|
|
||||||
@@ -16,7 +16,6 @@ package com.android.systemui;
|
|||||||
|
|
||||||
import android.annotation.Nullable;
|
import android.annotation.Nullable;
|
||||||
import android.app.INotificationManager;
|
import android.app.INotificationManager;
|
||||||
import android.content.res.Configuration;
|
|
||||||
import android.hardware.SensorPrivacyManager;
|
import android.hardware.SensorPrivacyManager;
|
||||||
import android.hardware.display.NightDisplayListener;
|
import android.hardware.display.NightDisplayListener;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
@@ -521,15 +520,6 @@ public class Dependency {
|
|||||||
.forEach(o -> ((Dumpable) o).dump(fd, pw, args));
|
.forEach(o -> ((Dumpable) o).dump(fd, pw, args));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected static void staticOnConfigurationChanged(Configuration newConfig) {
|
|
||||||
sDependency.onConfigurationChanged(newConfig);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected synchronized void onConfigurationChanged(Configuration newConfig) {
|
|
||||||
mDependencies.values().stream().filter(obj -> obj instanceof ConfigurationChangedReceiver)
|
|
||||||
.forEach(o -> ((ConfigurationChangedReceiver) o).onConfigurationChanged(newConfig));
|
|
||||||
}
|
|
||||||
|
|
||||||
protected final <T> T getDependency(Class<T> cls) {
|
protected final <T> T getDependency(Class<T> cls) {
|
||||||
return getDependencyInner(cls);
|
return getDependencyInner(cls);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -286,7 +286,11 @@ public class SystemUIApplication extends Application implements SysUiServiceProv
|
|||||||
@Override
|
@Override
|
||||||
public void onConfigurationChanged(Configuration newConfig) {
|
public void onConfigurationChanged(Configuration newConfig) {
|
||||||
if (mServicesStarted) {
|
if (mServicesStarted) {
|
||||||
Dependency.staticOnConfigurationChanged(newConfig);
|
SystemUIFactory
|
||||||
|
.getInstance()
|
||||||
|
.getRootComponent()
|
||||||
|
.getConfigurationController()
|
||||||
|
.onConfigurationChanged(newConfig);
|
||||||
int len = mServices.length;
|
int len = mServices.length;
|
||||||
for (int i = 0; i < len; i++) {
|
for (int i = 0; i < len; i++) {
|
||||||
if (mServices[i] != null) {
|
if (mServices[i] != null) {
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import static com.android.systemui.Dependency.ALLOW_NOTIFICATION_LONG_PRESS_NAME
|
|||||||
|
|
||||||
import com.android.systemui.fragments.FragmentService;
|
import com.android.systemui.fragments.FragmentService;
|
||||||
import com.android.systemui.statusbar.phone.StatusBar;
|
import com.android.systemui.statusbar.phone.StatusBar;
|
||||||
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
import com.android.systemui.util.InjectionInflationController;
|
import com.android.systemui.util.InjectionInflationController;
|
||||||
import com.android.systemui.util.leak.GarbageMonitor;
|
import com.android.systemui.util.leak.GarbageMonitor;
|
||||||
|
|
||||||
@@ -40,12 +41,20 @@ import dagger.Component;
|
|||||||
SystemUIModule.class,
|
SystemUIModule.class,
|
||||||
SystemUIDefaultModule.class})
|
SystemUIDefaultModule.class})
|
||||||
public interface SystemUIRootComponent {
|
public interface SystemUIRootComponent {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Main dependency providing module.
|
* Main dependency providing module.
|
||||||
*/
|
*/
|
||||||
@Singleton
|
@Singleton
|
||||||
Dependency.DependencyInjector createDependency();
|
Dependency.DependencyInjector createDependency();
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a ConfigurationController.
|
||||||
|
*/
|
||||||
|
@Singleton
|
||||||
|
ConfigurationController getConfigurationController();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Injects the StatusBar.
|
* Injects the StatusBar.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -39,13 +39,13 @@ import com.android.internal.logging.MetricsLogger;
|
|||||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||||
import com.android.keyguard.KeyguardUpdateMonitor;
|
import com.android.keyguard.KeyguardUpdateMonitor;
|
||||||
import com.android.settingslib.applications.InterestingConfigChanges;
|
import com.android.settingslib.applications.InterestingConfigChanges;
|
||||||
import com.android.systemui.ConfigurationChangedReceiver;
|
|
||||||
import com.android.systemui.Dependency;
|
import com.android.systemui.Dependency;
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
import com.android.systemui.SysUiServiceProvider;
|
import com.android.systemui.SysUiServiceProvider;
|
||||||
import com.android.systemui.assist.ui.DefaultUiController;
|
import com.android.systemui.assist.ui.DefaultUiController;
|
||||||
import com.android.systemui.recents.OverviewProxyService;
|
import com.android.systemui.recents.OverviewProxyService;
|
||||||
import com.android.systemui.statusbar.CommandQueue;
|
import com.android.systemui.statusbar.CommandQueue;
|
||||||
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
|
||||||
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
@@ -55,7 +55,7 @@ import javax.inject.Singleton;
|
|||||||
* Class to manage everything related to assist in SystemUI.
|
* Class to manage everything related to assist in SystemUI.
|
||||||
*/
|
*/
|
||||||
@Singleton
|
@Singleton
|
||||||
public class AssistManager implements ConfigurationChangedReceiver {
|
public class AssistManager {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Controls the UI for showing Assistant invocation progress.
|
* Controls the UI for showing Assistant invocation progress.
|
||||||
@@ -153,12 +153,40 @@ public class AssistManager implements ConfigurationChangedReceiver {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
private ConfigurationController.ConfigurationListener mConfigurationListener =
|
||||||
|
new ConfigurationController.ConfigurationListener() {
|
||||||
|
@Override
|
||||||
|
public void onConfigChanged(Configuration newConfig) {
|
||||||
|
if (!mInterestingConfigChanges.applyNewConfig(mContext.getResources())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
boolean visible = false;
|
||||||
|
if (mView != null) {
|
||||||
|
visible = mView.isShowing();
|
||||||
|
mWindowManager.removeView(mView);
|
||||||
|
}
|
||||||
|
|
||||||
|
mView = (AssistOrbContainer) LayoutInflater.from(mContext).inflate(
|
||||||
|
R.layout.assist_orb, null);
|
||||||
|
mView.setVisibility(View.GONE);
|
||||||
|
mView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
|
||||||
|
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE
|
||||||
|
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION);
|
||||||
|
WindowManager.LayoutParams lp = getLayoutParams();
|
||||||
|
mWindowManager.addView(mView, lp);
|
||||||
|
if (visible) {
|
||||||
|
mView.show(true /* show */, false /* animate */);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public AssistManager(
|
public AssistManager(
|
||||||
DeviceProvisionedController controller,
|
DeviceProvisionedController controller,
|
||||||
Context context,
|
Context context,
|
||||||
AssistUtils assistUtils,
|
AssistUtils assistUtils,
|
||||||
AssistHandleBehaviorController handleController) {
|
AssistHandleBehaviorController handleController,
|
||||||
|
ConfigurationController configurationController) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
mDeviceProvisionedController = controller;
|
mDeviceProvisionedController = controller;
|
||||||
mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
|
mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
|
||||||
@@ -167,11 +195,13 @@ public class AssistManager implements ConfigurationChangedReceiver {
|
|||||||
mPhoneStateMonitor = new PhoneStateMonitor(context);
|
mPhoneStateMonitor = new PhoneStateMonitor(context);
|
||||||
mHandleController = handleController;
|
mHandleController = handleController;
|
||||||
|
|
||||||
|
configurationController.addCallback(mConfigurationListener);
|
||||||
|
|
||||||
registerVoiceInteractionSessionListener();
|
registerVoiceInteractionSessionListener();
|
||||||
mInterestingConfigChanges = new InterestingConfigChanges(ActivityInfo.CONFIG_ORIENTATION
|
mInterestingConfigChanges = new InterestingConfigChanges(ActivityInfo.CONFIG_ORIENTATION
|
||||||
| ActivityInfo.CONFIG_LOCALE | ActivityInfo.CONFIG_UI_MODE
|
| ActivityInfo.CONFIG_LOCALE | ActivityInfo.CONFIG_UI_MODE
|
||||||
| ActivityInfo.CONFIG_SCREEN_LAYOUT | ActivityInfo.CONFIG_ASSETS_PATHS);
|
| ActivityInfo.CONFIG_SCREEN_LAYOUT | ActivityInfo.CONFIG_ASSETS_PATHS);
|
||||||
onConfigurationChanged(context.getResources().getConfiguration());
|
mConfigurationListener.onConfigChanged(context.getResources().getConfiguration());
|
||||||
mShouldEnableOrb = !ActivityManager.isLowRamDeviceStatic();
|
mShouldEnableOrb = !ActivityManager.isLowRamDeviceStatic();
|
||||||
|
|
||||||
mUiController = new DefaultUiController(mContext);
|
mUiController = new DefaultUiController(mContext);
|
||||||
@@ -221,29 +251,6 @@ public class AssistManager implements ConfigurationChangedReceiver {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onConfigurationChanged(Configuration newConfiguration) {
|
|
||||||
if (!mInterestingConfigChanges.applyNewConfig(mContext.getResources())) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
boolean visible = false;
|
|
||||||
if (mView != null) {
|
|
||||||
visible = mView.isShowing();
|
|
||||||
mWindowManager.removeView(mView);
|
|
||||||
}
|
|
||||||
|
|
||||||
mView = (AssistOrbContainer) LayoutInflater.from(mContext).inflate(
|
|
||||||
R.layout.assist_orb, null);
|
|
||||||
mView.setVisibility(View.GONE);
|
|
||||||
mView.setSystemUiVisibility(
|
|
||||||
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE
|
|
||||||
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION);
|
|
||||||
WindowManager.LayoutParams lp = getLayoutParams();
|
|
||||||
mWindowManager.addView(mView, lp);
|
|
||||||
if (visible) {
|
|
||||||
mView.show(true /* show */, false /* animate */);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected boolean shouldShowOrb() {
|
protected boolean shouldShowOrb() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,11 +20,11 @@ import android.os.Handler;
|
|||||||
import android.util.ArrayMap;
|
import android.util.ArrayMap;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.android.systemui.ConfigurationChangedReceiver;
|
|
||||||
import com.android.systemui.Dumpable;
|
import com.android.systemui.Dumpable;
|
||||||
import com.android.systemui.SystemUIRootComponent;
|
import com.android.systemui.SystemUIRootComponent;
|
||||||
import com.android.systemui.qs.QSFragment;
|
import com.android.systemui.qs.QSFragment;
|
||||||
import com.android.systemui.statusbar.phone.NavigationBarFragment;
|
import com.android.systemui.statusbar.phone.NavigationBarFragment;
|
||||||
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
|
|
||||||
import java.io.FileDescriptor;
|
import java.io.FileDescriptor;
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
@@ -41,7 +41,7 @@ import dagger.Subcomponent;
|
|||||||
* Also dispatches the configuration changes to all current FragmentHostStates.
|
* Also dispatches the configuration changes to all current FragmentHostStates.
|
||||||
*/
|
*/
|
||||||
@Singleton
|
@Singleton
|
||||||
public class FragmentService implements ConfigurationChangedReceiver, Dumpable {
|
public class FragmentService implements Dumpable {
|
||||||
|
|
||||||
private static final String TAG = "FragmentService";
|
private static final String TAG = "FragmentService";
|
||||||
|
|
||||||
@@ -50,10 +50,22 @@ public class FragmentService implements ConfigurationChangedReceiver, Dumpable {
|
|||||||
private final Handler mHandler = new Handler();
|
private final Handler mHandler = new Handler();
|
||||||
private final FragmentCreator mFragmentCreator;
|
private final FragmentCreator mFragmentCreator;
|
||||||
|
|
||||||
|
private ConfigurationController.ConfigurationListener mConfigurationListener =
|
||||||
|
new ConfigurationController.ConfigurationListener() {
|
||||||
|
@Override
|
||||||
|
public void onConfigChanged(Configuration newConfig) {
|
||||||
|
for (FragmentHostState state : mHosts.values()) {
|
||||||
|
state.sendConfigurationChange(newConfig);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public FragmentService(SystemUIRootComponent rootComponent) {
|
public FragmentService(SystemUIRootComponent rootComponent,
|
||||||
|
ConfigurationController configurationController) {
|
||||||
mFragmentCreator = rootComponent.createFragmentCreator();
|
mFragmentCreator = rootComponent.createFragmentCreator();
|
||||||
initInjectionMap();
|
initInjectionMap();
|
||||||
|
configurationController.addCallback(mConfigurationListener);
|
||||||
}
|
}
|
||||||
|
|
||||||
ArrayMap<String, Method> getInjectionMap() {
|
ArrayMap<String, Method> getInjectionMap() {
|
||||||
@@ -96,13 +108,6 @@ public class FragmentService implements ConfigurationChangedReceiver, Dumpable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onConfigurationChanged(Configuration newConfig) {
|
|
||||||
for (FragmentHostState state : mHosts.values()) {
|
|
||||||
state.sendConfigurationChange(newConfig);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
|
public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
|
||||||
pw.println("Dumping fragments:");
|
pw.println("Dumping fragments:");
|
||||||
|
|||||||
@@ -18,14 +18,11 @@ import android.content.Context
|
|||||||
import android.content.pm.ActivityInfo
|
import android.content.pm.ActivityInfo
|
||||||
import android.content.res.Configuration
|
import android.content.res.Configuration
|
||||||
import android.os.LocaleList
|
import android.os.LocaleList
|
||||||
|
|
||||||
import com.android.systemui.ConfigurationChangedReceiver
|
|
||||||
import com.android.systemui.statusbar.policy.ConfigurationController
|
import com.android.systemui.statusbar.policy.ConfigurationController
|
||||||
|
|
||||||
import java.util.ArrayList
|
import java.util.ArrayList
|
||||||
|
|
||||||
class ConfigurationControllerImpl(context: Context)
|
class ConfigurationControllerImpl(context: Context) : ConfigurationController {
|
||||||
: ConfigurationController, ConfigurationChangedReceiver {
|
|
||||||
|
|
||||||
private val listeners: MutableList<ConfigurationController.ConfigurationListener> = ArrayList()
|
private val listeners: MutableList<ConfigurationController.ConfigurationListener> = ArrayList()
|
||||||
private val lastConfig = Configuration()
|
private val lastConfig = Configuration()
|
||||||
|
|||||||
@@ -24,7 +24,11 @@ import com.android.systemui.statusbar.policy.ConfigurationController.Configurati
|
|||||||
*/
|
*/
|
||||||
public interface ConfigurationController extends CallbackController<ConfigurationListener> {
|
public interface ConfigurationController extends CallbackController<ConfigurationListener> {
|
||||||
|
|
||||||
public void notifyThemeChanged();
|
/** Alert controller of a change in the configuration. */
|
||||||
|
void onConfigurationChanged(Configuration newConfiguration);
|
||||||
|
|
||||||
|
/** Alert controller of a change in between light and dark themes. */
|
||||||
|
void notifyThemeChanged();
|
||||||
|
|
||||||
interface ConfigurationListener {
|
interface ConfigurationListener {
|
||||||
default void onConfigChanged(Configuration newConfig) {}
|
default void onConfigChanged(Configuration newConfig) {}
|
||||||
|
|||||||
@@ -61,7 +61,6 @@ import com.android.internal.annotations.VisibleForTesting;
|
|||||||
import com.android.internal.telephony.PhoneConstants;
|
import com.android.internal.telephony.PhoneConstants;
|
||||||
import com.android.internal.telephony.TelephonyIntents;
|
import com.android.internal.telephony.TelephonyIntents;
|
||||||
import com.android.settingslib.net.DataUsageController;
|
import com.android.settingslib.net.DataUsageController;
|
||||||
import com.android.systemui.ConfigurationChangedReceiver;
|
|
||||||
import com.android.systemui.DemoMode;
|
import com.android.systemui.DemoMode;
|
||||||
import com.android.systemui.Dumpable;
|
import com.android.systemui.Dumpable;
|
||||||
import com.android.systemui.R;
|
import com.android.systemui.R;
|
||||||
@@ -87,8 +86,7 @@ import javax.inject.Singleton;
|
|||||||
/** Platform implementation of the network controller. **/
|
/** Platform implementation of the network controller. **/
|
||||||
@Singleton
|
@Singleton
|
||||||
public class NetworkControllerImpl extends BroadcastReceiver
|
public class NetworkControllerImpl extends BroadcastReceiver
|
||||||
implements NetworkController, DemoMode, DataUsageController.NetworkNameProvider,
|
implements NetworkController, DemoMode, DataUsageController.NetworkNameProvider, Dumpable {
|
||||||
ConfigurationChangedReceiver, Dumpable {
|
|
||||||
// debug
|
// debug
|
||||||
static final String TAG = "NetworkController";
|
static final String TAG = "NetworkController";
|
||||||
static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
|
static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
|
||||||
@@ -166,6 +164,14 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
private boolean mUserSetup;
|
private boolean mUserSetup;
|
||||||
private boolean mSimDetected;
|
private boolean mSimDetected;
|
||||||
|
|
||||||
|
private ConfigurationController.ConfigurationListener mConfigurationListener =
|
||||||
|
new ConfigurationController.ConfigurationListener() {
|
||||||
|
@Override
|
||||||
|
public void onConfigChanged(Configuration newConfig) {
|
||||||
|
mConfig = Config.readConfig(mContext);
|
||||||
|
mReceiverHandler.post(() -> handleConfigurationChanged());
|
||||||
|
}
|
||||||
|
};
|
||||||
/**
|
/**
|
||||||
* Construct this controller object and register for updates.
|
* Construct this controller object and register for updates.
|
||||||
*/
|
*/
|
||||||
@@ -553,16 +559,6 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onConfigurationChanged(Configuration newConfig) {
|
|
||||||
mConfig = Config.readConfig(mContext);
|
|
||||||
mReceiverHandler.post(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
handleConfigurationChanged();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
void handleConfigurationChanged() {
|
void handleConfigurationChanged() {
|
||||||
updateMobileControllers();
|
updateMobileControllers();
|
||||||
|
|||||||
@@ -36,8 +36,6 @@ import java.io.PrintWriter;
|
|||||||
public class DependencyTest extends SysuiTestCase {
|
public class DependencyTest extends SysuiTestCase {
|
||||||
|
|
||||||
public static final DependencyKey<Dumpable> DUMPABLE = new DependencyKey<>("dumpable");
|
public static final DependencyKey<Dumpable> DUMPABLE = new DependencyKey<>("dumpable");
|
||||||
public static final DependencyKey<ConfigurationChangedReceiver> CONFIGURATION_CHANGED_RECEIVER
|
|
||||||
= new DependencyKey<>("config_changed_receiver");
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testClassDependency() {
|
public void testClassDependency() {
|
||||||
@@ -62,15 +60,6 @@ public class DependencyTest extends SysuiTestCase {
|
|||||||
verify(d).dump(eq(null), any(), eq(null));
|
verify(d).dump(eq(null), any(), eq(null));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testConfigurationChanged() {
|
|
||||||
ConfigurationChangedReceiver d = mock(ConfigurationChangedReceiver.class);
|
|
||||||
mDependency.injectTestDependency(CONFIGURATION_CHANGED_RECEIVER, d);
|
|
||||||
Dependency.get(CONFIGURATION_CHANGED_RECEIVER);
|
|
||||||
mDependency.onConfigurationChanged(null);
|
|
||||||
verify(d).onConfigurationChanged(eq(null));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testInitDependency() {
|
public void testInitDependency() {
|
||||||
Dependency.clearDependencies();
|
Dependency.clearDependencies();
|
||||||
|
|||||||
@@ -14,6 +14,8 @@
|
|||||||
|
|
||||||
package com.android.systemui.utils.leaks;
|
package com.android.systemui.utils.leaks;
|
||||||
|
|
||||||
|
import android.content.res.Configuration;
|
||||||
|
|
||||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
|
|
||||||
public class FakeConfigurationController
|
public class FakeConfigurationController
|
||||||
@@ -24,6 +26,10 @@ public class FakeConfigurationController
|
|||||||
super(sysuiLeakCheck, "config");
|
super(sysuiLeakCheck, "config");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onConfigurationChanged(Configuration newConfiguration) {
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void notifyThemeChanged() {
|
public void notifyThemeChanged() {
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user