summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/res/layout/qs_footer_impl.xml4
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/QSFooterView.java (renamed from packages/SystemUI/src/com/android/systemui/qs/QSFooterImpl.java)11
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/QSFooterViewController.java (renamed from packages/SystemUI/src/com/android/systemui/qs/QSFooterImplController.java)47
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/QSFragment.java3
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentComponent.java6
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentModule.java17
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/qs/QSFooterViewControllerTest.java (renamed from packages/SystemUI/tests/src/com/android/systemui/qs/QSFooterImplControllerTest.java)8
7 files changed, 37 insertions, 59 deletions
diff --git a/packages/SystemUI/res/layout/qs_footer_impl.xml b/packages/SystemUI/res/layout/qs_footer_impl.xml
index 436188a83d4f..0822947e8b16 100644
--- a/packages/SystemUI/res/layout/qs_footer_impl.xml
+++ b/packages/SystemUI/res/layout/qs_footer_impl.xml
@@ -16,7 +16,7 @@
-->
<!-- Extends FrameLayout -->
-<com.android.systemui.qs.QSFooterImpl
+<com.android.systemui.qs.QSFooterView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/qs_footer"
android:layout_width="match_parent"
@@ -130,4 +130,4 @@
</com.android.systemui.statusbar.AlphaOptimizedFrameLayout>
</com.android.keyguard.AlphaOptimizedLinearLayout>
</LinearLayout>
-</com.android.systemui.qs.QSFooterImpl>
+</com.android.systemui.qs.QSFooterView>
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSFooterImpl.java b/packages/SystemUI/src/com/android/systemui/qs/QSFooterView.java
index 399321261340..8b9dae14c809 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSFooterImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSFooterView.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2020 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.
@@ -11,7 +11,7 @@
* 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
+ * limitations under the License.
*/
package com.android.systemui.qs;
@@ -51,7 +51,7 @@ import com.android.systemui.statusbar.phone.MultiUserSwitch;
import com.android.systemui.statusbar.phone.SettingsButton;
/** */
-public class QSFooterImpl extends FrameLayout {
+public class QSFooterView extends FrameLayout {
private SettingsButton mSettingsButton;
protected View mSettingsContainer;
private PageIndicator mPageIndicator;
@@ -88,7 +88,7 @@ public class QSFooterImpl extends FrameLayout {
}
};
- public QSFooterImpl(Context context, AttributeSet attrs) {
+ public QSFooterView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@@ -201,6 +201,7 @@ public class QSFooterImpl extends FrameLayout {
updateEverything(isTunerEnabled);
}
+ /** */
public void setExpansion(float headerExpansionFraction) {
mExpansionAmount = headerExpansionFraction;
if (mSettingsCogAnimator != null) mSettingsCogAnimator.setPosition(headerExpansionFraction);
@@ -225,6 +226,7 @@ public class QSFooterImpl extends FrameLayout {
super.onDetachedFromWindow();
}
+ /** */
public void setListening(boolean listening) {
if (listening == mListening) {
return;
@@ -287,6 +289,7 @@ public class QSFooterImpl extends FrameLayout {
return mExpanded && mMultiUserSwitch.isMultiUserEnabled();
}
+ /** */
public void setQSPanel(final QSPanel qsPanel) {
if (qsPanel != null) {
mMultiUserSwitch.setQsPanel(qsPanel);
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSFooterImplController.java b/packages/SystemUI/src/com/android/systemui/qs/QSFooterViewController.java
index ddd66b9642cd..e3af04bdc31e 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSFooterImplController.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSFooterViewController.java
@@ -44,10 +44,10 @@ import com.android.systemui.util.ViewController;
import javax.inject.Inject;
/**
- * Controller for {@link QSFooterImpl}.
+ * Controller for {@link QSFooterView}.
*/
@QSScope
-public class QSFooterImplController extends ViewController<QSFooterImpl> implements QSFooter {
+public class QSFooterViewController extends ViewController<QSFooterView> implements QSFooter {
private final UserManager mUserManager;
private final UserInfoController mUserInfoController;
@@ -116,7 +116,7 @@ public class QSFooterImplController extends ViewController<QSFooterImpl> impleme
private boolean mExpanded;
@Inject
- QSFooterImplController(QSFooterImpl view, UserManager userManager,
+ QSFooterViewController(QSFooterView view, UserManager userManager,
UserInfoController userInfoController, ActivityStarter activityStarter,
DeviceProvisionedController deviceProvisionedController, UserTracker userTracker,
QSPanelController qsPanelController, TunerService tunerService,
@@ -238,45 +238,4 @@ public class QSFooterImplController extends ViewController<QSFooterImpl> impleme
private boolean isTunerEnabled() {
return mTunerService.isTunerEnabled(mUserTracker.getUserHandle());
}
-
- /**
- * Factory for {@link QSFooterImplController}.
- *
- * TODO(b/168904199): Delete this once QSFooterImpl is no longer marked as injectable.
- */
- @QSScope
- public static class Factory {
- private final UserManager mUserManager;
- private final UserInfoController mUserInfoController;
- private final ActivityStarter mActivityStarter;
- private final DeviceProvisionedController mDeviceProvisionedController;
- private final UserTracker mUserTracker;
- private final QSPanelController mQsPanelController;
- private final TunerService mTunerService;
- private final MetricsLogger mMetricsLogger;
-
- @Inject
- Factory(UserManager userManager, UserInfoController userInfoController,
- ActivityStarter activityStarter,
- DeviceProvisionedController deviceProvisionedController, UserTracker userTracker,
- QSPanelController qsPanelController, TunerService tunerService,
- MetricsLogger metricsLogger) {
- mUserManager = userManager;
- mUserInfoController = userInfoController;
- mActivityStarter = activityStarter;
- mDeviceProvisionedController = deviceProvisionedController;
- mUserTracker = userTracker;
- mQsPanelController = qsPanelController;
- mTunerService = tunerService;
- mMetricsLogger = metricsLogger;
- }
-
- QSFooterImplController create(QSFooterImpl view) {
- QSFooterImplController controller = new QSFooterImplController(view, mUserManager,
- mUserInfoController, mActivityStarter, mDeviceProvisionedController,
- mUserTracker, mQsPanelController, mTunerService, mMetricsLogger);
- controller.init();
- return controller;
- }
- }
}
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java b/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java
index ca91adba3364..1a7d366d84b4 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java
@@ -142,8 +142,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
mQSDetail = view.findViewById(R.id.qs_detail);
mHeader = view.findViewById(R.id.header);
mQSPanelController.setHeaderContainer(view.findViewById(R.id.header_text_container));
- mFooter = qsFragmentComponent.getQSFooterFactory().create(
- view.findViewById(R.id.qs_footer));
+ mFooter = qsFragmentComponent.getQSFooter();
mQSContainerImplController = qsFragmentComponent.getQSContainerImplController();
mQSContainerImplController.init();
diff --git a/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentComponent.java b/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentComponent.java
index 59b9be62da12..51b2c8dfffbd 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentComponent.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentComponent.java
@@ -18,7 +18,7 @@ package com.android.systemui.qs.dagger;
import com.android.systemui.qs.QSAnimator;
import com.android.systemui.qs.QSContainerImplController;
-import com.android.systemui.qs.QSFooterImplController;
+import com.android.systemui.qs.QSFooter;
import com.android.systemui.qs.QSFragment;
import com.android.systemui.qs.QSPanelController;
import com.android.systemui.qs.QuickQSPanelController;
@@ -50,6 +50,6 @@ public interface QSFragmentComponent {
/** Construct a {@link QSContainerImplController}. */
QSContainerImplController getQSContainerImplController();
- /** */
- QSFooterImplController.Factory getQSFooterFactory();
+ /** Construct a {@link QSFooter} */
+ QSFooter getQSFooter();
}
diff --git a/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentModule.java b/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentModule.java
index ee3f2f60fccc..4bf4eff4c27e 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentModule.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/dagger/QSFragmentModule.java
@@ -22,6 +22,9 @@ import com.android.systemui.R;
import com.android.systemui.dagger.qualifiers.RootView;
import com.android.systemui.plugins.qs.QS;
import com.android.systemui.qs.QSContainerImpl;
+import com.android.systemui.qs.QSFooter;
+import com.android.systemui.qs.QSFooterView;
+import com.android.systemui.qs.QSFooterViewController;
import com.android.systemui.qs.QSFragment;
import com.android.systemui.qs.QSPanel;
import com.android.systemui.qs.QuickQSPanel;
@@ -70,4 +73,18 @@ public interface QSFragmentModule {
static QuickQSPanel providesQuickQSPanel(QuickStatusBarHeader quickStatusBarHeader) {
return quickStatusBarHeader.findViewById(R.id.quick_qs_panel);
}
+
+ /** */
+ @Provides
+ static QSFooterView providesQSFooterView(@RootView View view) {
+ return view.findViewById(R.id.qs_footer);
+ }
+
+ /** */
+ @Provides
+ @QSScope
+ static QSFooter providesQSFooter(QSFooterViewController qsFooterViewController) {
+ qsFooterViewController.init();
+ return qsFooterViewController;
+ }
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/QSFooterImplControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/QSFooterViewControllerTest.java
index 21248477c1ec..065f236d19b3 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/qs/QSFooterImplControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/qs/QSFooterViewControllerTest.java
@@ -57,10 +57,10 @@ import org.mockito.MockitoAnnotations;
@RunWith(AndroidTestingRunner.class)
@TestableLooper.RunWithLooper
@SmallTest
-public class QSFooterImplControllerTest extends LeakCheckedTest {
+public class QSFooterViewControllerTest extends LeakCheckedTest {
@Mock
- private QSFooterImpl mView;
+ private QSFooterView mView;
@Mock
private UserManager mUserManager;
@Mock
@@ -85,7 +85,7 @@ public class QSFooterImplControllerTest extends LeakCheckedTest {
@Mock
private View mEdit;
- private QSFooterImplController mController;
+ private QSFooterViewController mController;
@Before
public void setup() throws Exception {
@@ -106,7 +106,7 @@ public class QSFooterImplControllerTest extends LeakCheckedTest {
when(mView.findViewById(R.id.build)).thenReturn(mBuildText);
when(mView.findViewById(android.R.id.edit)).thenReturn(mEdit);
- mController = new QSFooterImplController(mView, mUserManager, mUserInfoController,
+ mController = new QSFooterViewController(mView, mUserManager, mUserInfoController,
mActivityStarter, mDeviceProvisionedController, mUserTracker, mQSPanelController,
mFakeTunerService, mMetricsLogger);