Merge "Removes TunablePadding." into main
diff --git a/packages/SystemUI/src/com/android/systemui/Dependency.java b/packages/SystemUI/src/com/android/systemui/Dependency.java
index a42f4c2d..baf8f5a 100644
--- a/packages/SystemUI/src/com/android/systemui/Dependency.java
+++ b/packages/SystemUI/src/com/android/systemui/Dependency.java
@@ -54,7 +54,6 @@
import com.android.systemui.statusbar.policy.BluetoothController;
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
import com.android.systemui.statusbar.window.StatusBarWindowController;
-import com.android.systemui.tuner.TunablePadding.TunablePaddingService;
import com.android.systemui.tuner.TunerService;
import dagger.Lazy;
@@ -129,7 +128,6 @@
@Nullable
@Inject Lazy<VolumeDialogController> mVolumeDialogController;
@Inject Lazy<MetricsLogger> mMetricsLogger;
- @Inject Lazy<TunablePaddingService> mTunablePaddingService;
@Inject Lazy<UiOffloadThread> mUiOffloadThread;
@Inject Lazy<LightBarController> mLightBarController;
@Inject Lazy<OverviewProxyService> mOverviewProxyService;
@@ -177,7 +175,6 @@
mProviders.put(FragmentService.class, mFragmentService::get);
mProviders.put(VolumeDialogController.class, mVolumeDialogController::get);
mProviders.put(MetricsLogger.class, mMetricsLogger::get);
- mProviders.put(TunablePaddingService.class, mTunablePaddingService::get);
mProviders.put(UiOffloadThread.class, mUiOffloadThread::get);
mProviders.put(LightBarController.class, mLightBarController::get);
mProviders.put(OverviewProxyService.class, mOverviewProxyService::get);
diff --git a/packages/SystemUI/src/com/android/systemui/tuner/TunablePadding.java b/packages/SystemUI/src/com/android/systemui/tuner/TunablePadding.java
deleted file mode 100644
index d54c07c..0000000
--- a/packages/SystemUI/src/com/android/systemui/tuner/TunablePadding.java
+++ /dev/null
@@ -1,104 +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.tuner;
-
-import android.util.DisplayMetrics;
-import android.view.View;
-import android.view.WindowManager;
-
-import com.android.systemui.Dependency;
-import com.android.systemui.dagger.SysUISingleton;
-import com.android.systemui.tuner.TunerService.Tunable;
-
-import javax.inject.Inject;
-
-/**
- * Version of Space that can be resized by a tunable setting.
- */
-public class TunablePadding implements Tunable {
-
- public static final int FLAG_START = 1;
- public static final int FLAG_END = 2;
- public static final int FLAG_TOP = 4;
- public static final int FLAG_BOTTOM = 8;
-
- private final int mFlags;
- private final View mView;
- private final int mDefaultSize;
- private final float mDensity;
- private final TunerService mTunerService;
-
- private TunablePadding(String key, int def, int flags, View view, TunerService tunerService) {
- mDefaultSize = def;
- mFlags = flags;
- mView = view;
- DisplayMetrics metrics = new DisplayMetrics();
- view.getContext().getSystemService(WindowManager.class)
- .getDefaultDisplay().getMetrics(metrics);
- mDensity = metrics.density;
- mTunerService = tunerService;
- mTunerService.addTunable(this, key);
- }
-
- @Override
- public void onTuningChanged(String key, String newValue) {
- int dimen = mDefaultSize;
- if (newValue != null) {
- try {
- dimen = (int) (Integer.parseInt(newValue) * mDensity);
- } catch (NumberFormatException ex) {}
- }
- int left = mView.isLayoutRtl() ? FLAG_END : FLAG_START;
- int right = mView.isLayoutRtl() ? FLAG_START : FLAG_END;
- mView.setPadding(getPadding(dimen, left), getPadding(dimen, FLAG_TOP),
- getPadding(dimen, right), getPadding(dimen, FLAG_BOTTOM));
- }
-
- private int getPadding(int dimen, int flag) {
- return ((mFlags & flag) != 0) ? dimen : 0;
- }
-
- public void destroy() {
- mTunerService.removeTunable(this);
- }
-
- /**
- * Exists for easy injecting in tests.
- */
- @SysUISingleton
- public static class TunablePaddingService {
-
- private final TunerService mTunerService;
-
- /**
- */
- @Inject
- public TunablePaddingService(TunerService tunerService) {
- mTunerService = tunerService;
- }
-
- public TunablePadding add(View view, String key, int defaultSize, int flags) {
- if (view == null) {
- throw new IllegalArgumentException();
- }
- return new TunablePadding(key, defaultSize, flags, view, mTunerService);
- }
- }
-
- public static TunablePadding addTunablePadding(View view, String key, int defaultSize,
- int flags) {
- return Dependency.get(TunablePaddingService.class).add(view, key, defaultSize, flags);
- }
-}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/tuner/TunablePaddingTest.java b/packages/SystemUI/tests/src/com/android/systemui/tuner/TunablePaddingTest.java
deleted file mode 100644
index bb7b31b..0000000
--- a/packages/SystemUI/tests/src/com/android/systemui/tuner/TunablePaddingTest.java
+++ /dev/null
@@ -1,126 +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.tuner;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.doAnswer;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.testing.LeakCheck.Tracker;
-import android.util.DisplayMetrics;
-import android.view.View;
-import android.view.WindowManager;
-
-import androidx.test.ext.junit.runners.AndroidJUnit4;
-import androidx.test.filters.SmallTest;
-
-import com.android.systemui.utils.leaks.LeakCheckedTest;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-@SmallTest
-@RunWith(AndroidJUnit4.class)
-public class TunablePaddingTest extends LeakCheckedTest {
-
- private static final String KEY = "KEY";
- private static final int DEFAULT = 42;
- private View mView;
- private TunablePadding mTunablePadding;
- private TunerService mTunerService;
-
- @Before
- public void setup() {
- injectLeakCheckedDependencies(ALL_SUPPORTED_CLASSES);
- mView = mock(View.class);
- when(mView.getContext()).thenReturn(mContext);
-
- mTunerService = mock(TunerService.class);
- mDependency.injectTestDependency(TunablePadding.TunablePaddingService.class,
- new TunablePadding.TunablePaddingService(mTunerService));
- Tracker tracker = mLeakCheck.getTracker("tuner");
- doAnswer(invocation -> {
- tracker.getLeakInfo(invocation.getArguments()[0]).addAllocation(new Throwable());
- return null;
- }).when(mTunerService).addTunable(any(), any());
- doAnswer(invocation -> {
- tracker.getLeakInfo(invocation.getArguments()[0]).clearAllocations();
- return null;
- }).when(mTunerService).removeTunable(any());
- }
-
- @Test
- public void testFlags() {
- mTunablePadding = TunablePadding.addTunablePadding(mView, KEY, DEFAULT,
- TunablePadding.FLAG_START);
- mTunablePadding.onTuningChanged(null, null);
- verify(mView).setPadding(eq(DEFAULT), eq(0), eq(0), eq(0));
- mTunablePadding.destroy();
-
- mTunablePadding = TunablePadding.addTunablePadding(mView, KEY, DEFAULT,
- TunablePadding.FLAG_TOP);
- mTunablePadding.onTuningChanged(null, null);
- verify(mView).setPadding(eq(0), eq(DEFAULT), eq(0), eq(0));
- mTunablePadding.destroy();
-
- mTunablePadding = TunablePadding.addTunablePadding(mView, KEY, DEFAULT,
- TunablePadding.FLAG_END);
- mTunablePadding.onTuningChanged(null, null);
- verify(mView).setPadding(eq(0), eq(0), eq(DEFAULT), eq(0));
- mTunablePadding.destroy();
-
- mTunablePadding = TunablePadding.addTunablePadding(mView, KEY, DEFAULT,
- TunablePadding.FLAG_BOTTOM);
- mTunablePadding.onTuningChanged(null, null);
- verify(mView).setPadding(eq(0), eq(0), eq(0), eq(DEFAULT));
- mTunablePadding.destroy();
- }
-
- @Test
- public void testRtl() {
- when(mView.isLayoutRtl()).thenReturn(true);
-
- mTunablePadding = TunablePadding.addTunablePadding(mView, KEY, DEFAULT,
- TunablePadding.FLAG_END);
- mTunablePadding.onTuningChanged(null, null);
- verify(mView).setPadding(eq(DEFAULT), eq(0), eq(0), eq(0));
- mTunablePadding.destroy();
-
- mTunablePadding = TunablePadding.addTunablePadding(mView, KEY, DEFAULT,
- TunablePadding.FLAG_START);
- mTunablePadding.onTuningChanged(null, null);
- verify(mView).setPadding(eq(0), eq(0), eq(DEFAULT), eq(0));
- mTunablePadding.destroy();
- }
-
- @Test
- public void testTuning() {
- int value = 3;
- mTunablePadding = TunablePadding.addTunablePadding(mView, KEY, DEFAULT,
- TunablePadding.FLAG_START);
- mTunablePadding.onTuningChanged(KEY, String.valueOf(value));
-
- DisplayMetrics metrics = new DisplayMetrics();
- mContext.getSystemService(WindowManager.class).getDefaultDisplay().getMetrics(metrics);
- int output = (int) (metrics.density * value);
- verify(mView).setPadding(eq(output), eq(0), eq(0), eq(0));
-
- mTunablePadding.destroy();
- }
-}