Settings: Remove HAL HDR+ option

Test: RunSettingsRoboTests
Bug: 68223991
Change-Id: I9eb27c7e205ac005c6a71726e125ed1e512da33b
This commit is contained in:
Chien-Yu Chen
2017-11-10 13:51:24 -08:00
parent 5c1e686d3f
commit 5d242df477
11 changed files with 0 additions and 529 deletions

View File

@@ -41,9 +41,6 @@
<!-- Whether to show Connectivity Monitor switch in Developer Options -->
<bool name="config_show_connectivity_monitor">false</bool>
<!-- Whether to show Camera HAL HDR+ switch in Developer Options -->
<bool name="config_show_camera_hal_hdrplus">false</bool>
<!-- Whether to show Camera laser sensor switch in Developer Options -->
<bool name="config_show_camera_laser_sensor">false</bool>

View File

@@ -8275,12 +8275,6 @@
<!-- Toast message letting the user know the how to apply connectivity monitor change -->
<string name="connectivity_monitor_toast">To apply connectivity monitor change, reboot device</string>
<!-- Title for Camera HAL HDR+ switch [CHAR LIMIT=50] -->
<string name="camera_hal_hdrplus_switch">Camera HAL HDR+</string>
<!-- Toast message letting the user know how to enable Camera HAL HDR+ -->
<string name="camera_hal_hdrplus_toast">To apply Camera HAL HDR+ change, reboot device</string>
<!-- Title for Camera laser sensor switch [CHAR LIMIT=NONE] -->
<string name="camera_laser_sensor_switch">Camera Laser Sensor</string>

View File

@@ -172,10 +172,6 @@
android:key="camera_laser_sensor_switch"
android:title="@string/camera_laser_sensor_switch" />
<SwitchPreference
android:key="camera_hal_hdrplus_switch"
android:title="@string/camera_hal_hdrplus_switch" />
<Preference
android:key="feature_flags_dashboard"
android:title="@string/feature_flags_dashboard_title"

View File

@@ -1,109 +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.settings.development;
import android.content.Context;
import android.os.SystemProperties;
import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import android.widget.Toast;
import com.android.internal.annotations.VisibleForTesting;
import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.core.AbstractPreferenceController;
/**
* deprecated in favor of {@link CameraHalHdrPlusPreferenceControllerV2}
*/
@Deprecated
public class CameraHalHdrplusPreferenceController extends AbstractPreferenceController
implements PreferenceControllerMixin {
private static final String KEY_CAMERA_HAL_HDRPLUS_SWITCH = "camera_hal_hdrplus_switch";
@VisibleForTesting
static final String BUILD_TYPE = "ro.build.type";
@VisibleForTesting
static final String PROPERTY_CAMERA_HAL_HDRPLUS = "persist.camera.hdrplus.enable";
@VisibleForTesting
static final String ENABLED = "1";
@VisibleForTesting
static final String DISABLED = "0";
private SwitchPreference mPreference;
public CameraHalHdrplusPreferenceController(Context context) {
super(context);
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
if (isAvailable()) {
mPreference = (SwitchPreference) screen.findPreference(KEY_CAMERA_HAL_HDRPLUS_SWITCH);
mPreference.setChecked(isHalHdrplusEnabled());
}
}
@Override
public String getPreferenceKey() {
return KEY_CAMERA_HAL_HDRPLUS_SWITCH;
}
@Override
public boolean isAvailable() {
return mContext.getResources().getBoolean(R.bool.config_show_camera_hal_hdrplus);
}
@Override
public void updateState(Preference preference) {
updatePreference();
}
@Override
public boolean handlePreferenceTreeClick(Preference preference) {
if (KEY_CAMERA_HAL_HDRPLUS_SWITCH.equals(preference.getKey())) {
final SwitchPreference switchPreference = (SwitchPreference)preference;
SystemProperties.set(PROPERTY_CAMERA_HAL_HDRPLUS,
switchPreference.isChecked() ? ENABLED : DISABLED);
Toast.makeText(mContext, R.string.camera_hal_hdrplus_toast,
Toast.LENGTH_LONG).show();
return true;
}
return false;
}
public void enablePreference(boolean enabled) {
if (isAvailable()) {
mPreference.setEnabled(enabled);
}
}
public boolean updatePreference() {
if (!isAvailable()) {
return false;
}
final boolean enabled = isHalHdrplusEnabled();
mPreference.setChecked(enabled);
return enabled;
}
private boolean isHalHdrplusEnabled() {
return SystemProperties.getBoolean(PROPERTY_CAMERA_HAL_HDRPLUS, true);
}
}

View File

@@ -1,100 +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.settings.development;
import android.content.Context;
import android.os.SystemProperties;
import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import android.text.TextUtils;
import android.widget.Toast;
import com.android.internal.annotations.VisibleForTesting;
import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.development.DeveloperOptionsPreferenceController;
public class CameraHalHdrplusPreferenceControllerV2 extends
DeveloperOptionsPreferenceController implements
Preference.OnPreferenceChangeListener, PreferenceControllerMixin {
private static final String KEY_CAMERA_HAL_HDRPLUS_SWITCH = "camera_hal_hdrplus_switch";
@VisibleForTesting
static final String BUILD_TYPE = "ro.build.type";
@VisibleForTesting
static final String PROPERTY_CAMERA_HAL_HDRPLUS = "persist.camera.hdrplus.enable";
@VisibleForTesting
static final String ENABLED = "1";
@VisibleForTesting
static final String DISABLED = "0";
private SwitchPreference mPreference;
public CameraHalHdrplusPreferenceControllerV2(Context context) {
super(context);
}
@Override
public boolean isAvailable() {
final String buildType = SystemProperties.get(BUILD_TYPE);
return mContext.getResources().getBoolean(R.bool.config_show_camera_hal_hdrplus);
}
@Override
public String getPreferenceKey() {
return KEY_CAMERA_HAL_HDRPLUS_SWITCH;
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mPreference = (SwitchPreference) screen.findPreference(getPreferenceKey());
}
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
final boolean isEnabled = (Boolean) newValue;
SystemProperties.set(PROPERTY_CAMERA_HAL_HDRPLUS, isEnabled ? ENABLED : DISABLED);
Toast.makeText(mContext, R.string.camera_hal_hdrplus_toast, Toast.LENGTH_LONG).show();
return true;
}
@Override
public void updateState(Preference preference) {
final boolean enabled = isHalHdrplusEnabled();
mPreference.setChecked(enabled);
}
@Override
protected void onDeveloperOptionsSwitchEnabled() {
mPreference.setEnabled(true);
}
@Override
protected void onDeveloperOptionsSwitchDisabled() {
SystemProperties.set(PROPERTY_CAMERA_HAL_HDRPLUS, DISABLED);
mPreference.setChecked(false);
mPreference.setEnabled(false);
}
private boolean isHalHdrplusEnabled() {
return SystemProperties.getBoolean(PROPERTY_CAMERA_HAL_HDRPLUS, true /* default */);
}
}

View File

@@ -336,7 +336,6 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
private BugReportPreferenceController mBugReportController;
private BugReportInPowerPreferenceController mBugReportInPowerController;
private ConnectivityMonitorPreferenceController mConnectivityMonitorController;
private CameraHalHdrplusPreferenceController mCameraHalHdrplusController;
private CameraLaserSensorPreferenceController mCameraLaserSensorController;
private BroadcastReceiver mEnableAdbReceiver;
@@ -384,7 +383,6 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
mLogpersistController = new LogpersistPreferenceController(getActivity(), getLifecycle());
mWebViewAppPrefController = new WebViewAppPreferenceController(getActivity());
mVerifyAppsOverUsbController = new VerifyAppsOverUsbPreferenceController(getActivity());
mCameraHalHdrplusController = new CameraHalHdrplusPreferenceController(getActivity());
mCameraLaserSensorController = new CameraLaserSensorPreferenceController(getActivity());
setIfOnlyAvailableForAdmins(true);
@@ -421,7 +419,6 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
mLogdSizeController.displayPreference(preferenceScreen);
mLogpersistController.displayPreference(preferenceScreen);
mWebViewAppPrefController.displayPreference(preferenceScreen);
mCameraHalHdrplusController.displayPreference(preferenceScreen);
mEnableAdbController.displayPreference(preferenceScreen);
mCameraLaserSensorController.displayPreference(getPreferenceScreen());
@@ -646,7 +643,6 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
mLogdSizeController.enablePreference(enabled);
mLogpersistController.enablePreference(enabled);
mWebViewAppPrefController.enablePreference(enabled);
mCameraHalHdrplusController.enablePreference(enabled);
mCameraLaserSensorController.enablePreference(enabled);
updateAllOptions();
}
@@ -793,7 +789,6 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
}
mHaveDebugSettings |= mBugReportInPowerController.updatePreference();
mHaveDebugSettings |= mConnectivityMonitorController.updatePreference();
mHaveDebugSettings |= mCameraHalHdrplusController.updatePreference();
mHaveDebugSettings |= mCameraLaserSensorController.updatePreference();
updateSwitchPreference(mKeepScreenOn, Settings.Global.getInt(cr,
Settings.Global.STAY_ON_WHILE_PLUGGED_IN, 0) != 0);
@@ -2260,10 +2255,6 @@ public class DevelopmentSettings extends RestrictedSettingsFragment
return true;
}
if (mCameraHalHdrplusController.handlePreferenceTreeClick(preference)) {
return true;
}
if (mEnableAdbController.handlePreferenceTreeClick(preference)) {
return true;
}

View File

@@ -377,7 +377,6 @@ public class DevelopmentSettingsDashboardFragment extends RestrictedDashboardFra
controllers.add(new LogPersistPreferenceControllerV2(context, fragment, lifecycle));
controllers.add(new ConnectivityMonitorPreferenceControllerV2(context));
controllers.add(new CameraLaserSensorPreferenceControllerV2(context));
controllers.add(new CameraHalHdrplusPreferenceControllerV2(context));
controllers.add(new WifiDisplayCertificationPreferenceController(context));
controllers.add(new WifiVerboseLoggingPreferenceController(context));
controllers.add(new WifiAggressiveHandoverPreferenceController(context));

View File

@@ -15,7 +15,6 @@
-->
<resources>
<bool name="config_show_camera_hal_hdrplus">false</bool>
<bool name="config_enableColorTemperature">false</bool>
<bool name="config_show_camera_laser_sensor">false</bool>
<bool name="config_show_connectivity_monitor">false</bool>

View File

@@ -19,6 +19,5 @@
<bool name="config_new_device_intro_suggestion_supported">true</bool>
<bool name="config_enableColorTemperature">true</bool>
<bool name="config_show_camera_laser_sensor">true</bool>
<bool name="config_show_camera_hal_hdrplus">true</bool>
<bool name="config_show_connectivity_monitor">true</bool>
</resources>

View File

@@ -1,150 +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.settings.development;
import android.content.Context;
import android.os.SystemProperties;
import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Answers;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.annotation.Config;
import org.robolectric.RuntimeEnvironment;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
/**
* deprecated in favor of {@link CameraHalHdrPlusPreferenceControllerV2}
*/
@Deprecated
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
shadows = {SettingsShadowSystemProperties.class})
public class CameraHalHdrplusPreferenceControllerTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
private Context mContext;
@Mock
private PreferenceScreen mScreen;
@Mock
private SwitchPreference mPreference;
static final String USERDEBUG_BUILD = "userdebug";
private CameraHalHdrplusPreferenceController mController;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mController = new CameraHalHdrplusPreferenceController(mContext);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
when(mPreference.getKey()).thenReturn(mController.getPreferenceKey());
}
@After
public void tearDown() {
SettingsShadowSystemProperties.clear();
}
@Test
public void isAvailable_withConfigNoShow_shouldReturnFalse() {
when(mContext.getResources().getBoolean(R.bool.config_show_camera_hal_hdrplus))
.thenReturn(false);
assertThat(mController.isAvailable()).isFalse();
}
@Test
public void displayPreference_cameraHalHdrplusEnabled_shouldCheckedPreference() {
when(mContext.getResources().getBoolean(R.bool.config_show_camera_hal_hdrplus))
.thenReturn(true);
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceController.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceController.ENABLED);
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceController.BUILD_TYPE, USERDEBUG_BUILD);
mController.displayPreference(mScreen);
verify(mPreference).setChecked(true);
}
@Test
public void displayPreference_cameraHalHdrplusEnabled_shouldUncheckedPreference() {
when(mContext.getResources().getBoolean(R.bool.config_show_camera_hal_hdrplus))
.thenReturn(true);
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceController.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceController.DISABLED);
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceController.BUILD_TYPE, USERDEBUG_BUILD);
mController.displayPreference(mScreen);
verify(mPreference).setChecked(false);
}
@Test
public void handlePreferenceTreeClick_preferenceChecked_shouldEnableCameraHalHdrplus() {
when(mContext.getResources().getBoolean(R.bool.config_show_camera_hal_hdrplus))
.thenReturn(true);
when(mPreference.isChecked()).thenReturn(true);
when(mContext.getResources().getString(R.string.camera_hal_hdrplus_toast)).thenReturn(
RuntimeEnvironment.application.getString(R.string.camera_hal_hdrplus_toast));
mController.handlePreferenceTreeClick(mPreference);
assertThat(CameraHalHdrplusPreferenceController.ENABLED.equals(
SystemProperties.get(
CameraHalHdrplusPreferenceController.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceController.DISABLED))).isTrue();
}
@Test
public void handlePreferenceTreeClick_preferenceUnchecked_shouldDisableCameraHalHdrplus() {
when(mContext.getResources().getBoolean(R.bool.config_show_camera_hal_hdrplus))
.thenReturn(true);
when(mPreference.isChecked()).thenReturn(false);
when(mContext.getResources().getString(R.string.camera_hal_hdrplus_toast)).thenReturn(
RuntimeEnvironment.application.getString(R.string.camera_hal_hdrplus_toast));
mController.handlePreferenceTreeClick(mPreference);
assertThat(CameraHalHdrplusPreferenceController.DISABLED.equals(
SystemProperties.get(
CameraHalHdrplusPreferenceController.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceController.DISABLED))).isTrue();
}
}

View File

@@ -1,145 +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.settings.development;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.SystemProperties;
import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
shadows = {SettingsShadowSystemProperties.class})
public class CameraHalHdrplusPreferenceControllerV2Test {
@Mock
private PreferenceScreen mScreen;
@Mock
private SwitchPreference mPreference;
private Context mContext;
private CameraHalHdrplusPreferenceControllerV2 mController;
static final String USERDEBUG_BUILD = "userdebug";
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mController = new CameraHalHdrplusPreferenceControllerV2(mContext);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
when(mPreference.getKey()).thenReturn(mController.getPreferenceKey());
mController.displayPreference(mScreen);
}
@After
public void tearDown() {
SettingsShadowSystemProperties.clear();
}
@Test
@Config(qualifiers = "mcc999")
public void isAvailable_withConfigNoShowAndUserDebugBuild_shouldReturnFalse() {
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceControllerV2.BUILD_TYPE, USERDEBUG_BUILD);
assertThat(mController.isAvailable()).isFalse();
}
@Test
public void updateState_cameraHalHdrplusEnabled_shouldCheckedPreference() {
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceControllerV2.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceControllerV2.ENABLED);
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceControllerV2.BUILD_TYPE, USERDEBUG_BUILD);
mController.updateState(mPreference);
verify(mPreference).setChecked(true);
}
@Test
public void updateState_cameraHalHdrplusEnabled_shouldUncheckedPreference() {
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceControllerV2.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceControllerV2.DISABLED);
SettingsShadowSystemProperties.set(
CameraHalHdrplusPreferenceControllerV2.BUILD_TYPE, USERDEBUG_BUILD);
mController.updateState(mPreference);
verify(mPreference).setChecked(false);
}
@Test
public void onPreferenceChange_preferenceChecked_shouldEnableCameraHalHdrplus() {
mController.onPreferenceChange(mPreference, true /* new value */);
assertThat(CameraHalHdrplusPreferenceControllerV2.ENABLED).isEqualTo(
SystemProperties.get(
CameraHalHdrplusPreferenceControllerV2.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceControllerV2.DISABLED));
}
@Test
public void handlePreferenceTreeClick_preferenceUnchecked_shouldDisableCameraHalHdrplus() {
mController.onPreferenceChange(mPreference, false /* new value */);
assertThat(CameraHalHdrplusPreferenceControllerV2.DISABLED).isEqualTo(
SystemProperties.get(
CameraHalHdrplusPreferenceControllerV2.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceControllerV2.DISABLED));
}
@Test
public void onDeveloperOptionsSwitchEnabled_shouldEnablePreference() {
mController.onDeveloperOptionsSwitchEnabled();
verify(mPreference).setEnabled(true);
}
@Test
public void onDeveloperOptionsSwitchDisabled_shouldDisablePreference() {
mController.onDeveloperOptionsSwitchDisabled();
verify(mPreference).setEnabled(false);
verify(mPreference).setChecked(false);
assertThat(CameraHalHdrplusPreferenceControllerV2.DISABLED).isEqualTo(
SystemProperties.get(
CameraHalHdrplusPreferenceControllerV2.PROPERTY_CAMERA_HAL_HDRPLUS,
CameraHalHdrplusPreferenceControllerV2.DISABLED));
}
}