Loading packages/SystemUI/src/com/android/systemui/ConfigurationChangedReceiver.javadeleted 100644 → 0 +0 −21 Original line number Diff line number Diff line /* * 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); } packages/SystemUI/src/com/android/systemui/Dependency.java +0 −10 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.systemui; import android.annotation.Nullable; import android.app.INotificationManager; import android.content.res.Configuration; import android.hardware.SensorPrivacyManager; import android.hardware.display.NightDisplayListener; import android.os.Handler; Loading Loading @@ -521,15 +520,6 @@ public class Dependency { .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) { return getDependencyInner(cls); } Loading packages/SystemUI/src/com/android/systemui/SystemUIApplication.java +5 −1 Original line number Diff line number Diff line Loading @@ -286,7 +286,11 @@ public class SystemUIApplication extends Application implements SysUiServiceProv @Override public void onConfigurationChanged(Configuration newConfig) { if (mServicesStarted) { Dependency.staticOnConfigurationChanged(newConfig); SystemUIFactory .getInstance() .getRootComponent() .getConfigurationController() .onConfigurationChanged(newConfig); int len = mServices.length; for (int i = 0; i < len; i++) { if (mServices[i] != null) { Loading packages/SystemUI/src/com/android/systemui/SystemUIRootComponent.java +9 −0 Original line number Diff line number Diff line Loading @@ -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.statusbar.phone.StatusBar; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.util.InjectionInflationController; import com.android.systemui.util.leak.GarbageMonitor; Loading @@ -40,12 +41,20 @@ import dagger.Component; SystemUIModule.class, SystemUIDefaultModule.class}) public interface SystemUIRootComponent { /** * Main dependency providing module. */ @Singleton Dependency.DependencyInjector createDependency(); /** * Creates a ConfigurationController. */ @Singleton ConfigurationController getConfigurationController(); /** * Injects the StatusBar. */ Loading packages/SystemUI/src/com/android/systemui/assist/AssistManager.java +34 −27 Original line number Diff line number Diff line Loading @@ -39,13 +39,13 @@ import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.keyguard.KeyguardUpdateMonitor; import com.android.settingslib.applications.InterestingConfigChanges; import com.android.systemui.ConfigurationChangedReceiver; import com.android.systemui.Dependency; import com.android.systemui.R; import com.android.systemui.SysUiServiceProvider; import com.android.systemui.assist.ui.DefaultUiController; import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.statusbar.policy.DeviceProvisionedController; import javax.inject.Inject; Loading @@ -55,7 +55,7 @@ import javax.inject.Singleton; * Class to manage everything related to assist in SystemUI. */ @Singleton public class AssistManager implements ConfigurationChangedReceiver { public class AssistManager { /** * Controls the UI for showing Assistant invocation progress. Loading Loading @@ -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 public AssistManager( DeviceProvisionedController controller, Context context, AssistUtils assistUtils, AssistHandleBehaviorController handleController) { AssistHandleBehaviorController handleController, ConfigurationController configurationController) { mContext = context; mDeviceProvisionedController = controller; mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE); Loading @@ -167,11 +195,13 @@ public class AssistManager implements ConfigurationChangedReceiver { mPhoneStateMonitor = new PhoneStateMonitor(context); mHandleController = handleController; configurationController.addCallback(mConfigurationListener); registerVoiceInteractionSessionListener(); mInterestingConfigChanges = new InterestingConfigChanges(ActivityInfo.CONFIG_ORIENTATION | ActivityInfo.CONFIG_LOCALE | ActivityInfo.CONFIG_UI_MODE | ActivityInfo.CONFIG_SCREEN_LAYOUT | ActivityInfo.CONFIG_ASSETS_PATHS); onConfigurationChanged(context.getResources().getConfiguration()); mConfigurationListener.onConfigChanged(context.getResources().getConfiguration()); mShouldEnableOrb = !ActivityManager.isLowRamDeviceStatic(); mUiController = new DefaultUiController(mContext); Loading Loading @@ -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() { return false; } Loading Loading
packages/SystemUI/src/com/android/systemui/ConfigurationChangedReceiver.javadeleted 100644 → 0 +0 −21 Original line number Diff line number Diff line /* * 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); }
packages/SystemUI/src/com/android/systemui/Dependency.java +0 −10 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.systemui; import android.annotation.Nullable; import android.app.INotificationManager; import android.content.res.Configuration; import android.hardware.SensorPrivacyManager; import android.hardware.display.NightDisplayListener; import android.os.Handler; Loading Loading @@ -521,15 +520,6 @@ public class Dependency { .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) { return getDependencyInner(cls); } Loading
packages/SystemUI/src/com/android/systemui/SystemUIApplication.java +5 −1 Original line number Diff line number Diff line Loading @@ -286,7 +286,11 @@ public class SystemUIApplication extends Application implements SysUiServiceProv @Override public void onConfigurationChanged(Configuration newConfig) { if (mServicesStarted) { Dependency.staticOnConfigurationChanged(newConfig); SystemUIFactory .getInstance() .getRootComponent() .getConfigurationController() .onConfigurationChanged(newConfig); int len = mServices.length; for (int i = 0; i < len; i++) { if (mServices[i] != null) { Loading
packages/SystemUI/src/com/android/systemui/SystemUIRootComponent.java +9 −0 Original line number Diff line number Diff line Loading @@ -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.statusbar.phone.StatusBar; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.util.InjectionInflationController; import com.android.systemui.util.leak.GarbageMonitor; Loading @@ -40,12 +41,20 @@ import dagger.Component; SystemUIModule.class, SystemUIDefaultModule.class}) public interface SystemUIRootComponent { /** * Main dependency providing module. */ @Singleton Dependency.DependencyInjector createDependency(); /** * Creates a ConfigurationController. */ @Singleton ConfigurationController getConfigurationController(); /** * Injects the StatusBar. */ Loading
packages/SystemUI/src/com/android/systemui/assist/AssistManager.java +34 −27 Original line number Diff line number Diff line Loading @@ -39,13 +39,13 @@ import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.keyguard.KeyguardUpdateMonitor; import com.android.settingslib.applications.InterestingConfigChanges; import com.android.systemui.ConfigurationChangedReceiver; import com.android.systemui.Dependency; import com.android.systemui.R; import com.android.systemui.SysUiServiceProvider; import com.android.systemui.assist.ui.DefaultUiController; import com.android.systemui.recents.OverviewProxyService; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.statusbar.policy.DeviceProvisionedController; import javax.inject.Inject; Loading @@ -55,7 +55,7 @@ import javax.inject.Singleton; * Class to manage everything related to assist in SystemUI. */ @Singleton public class AssistManager implements ConfigurationChangedReceiver { public class AssistManager { /** * Controls the UI for showing Assistant invocation progress. Loading Loading @@ -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 public AssistManager( DeviceProvisionedController controller, Context context, AssistUtils assistUtils, AssistHandleBehaviorController handleController) { AssistHandleBehaviorController handleController, ConfigurationController configurationController) { mContext = context; mDeviceProvisionedController = controller; mWindowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE); Loading @@ -167,11 +195,13 @@ public class AssistManager implements ConfigurationChangedReceiver { mPhoneStateMonitor = new PhoneStateMonitor(context); mHandleController = handleController; configurationController.addCallback(mConfigurationListener); registerVoiceInteractionSessionListener(); mInterestingConfigChanges = new InterestingConfigChanges(ActivityInfo.CONFIG_ORIENTATION | ActivityInfo.CONFIG_LOCALE | ActivityInfo.CONFIG_UI_MODE | ActivityInfo.CONFIG_SCREEN_LAYOUT | ActivityInfo.CONFIG_ASSETS_PATHS); onConfigurationChanged(context.getResources().getConfiguration()); mConfigurationListener.onConfigChanged(context.getResources().getConfiguration()); mShouldEnableOrb = !ActivityManager.isLowRamDeviceStatic(); mUiController = new DefaultUiController(mContext); Loading Loading @@ -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() { return false; } Loading