Loading res/xml/language_and_input.xml +1 −2 Original line number Diff line number Diff line Loading @@ -83,8 +83,7 @@ <SwitchPreference android:key="vibrate_input_devices" android:title="@string/vibrate_input_devices" android:summaryOn="@string/vibrate_input_devices_summary" android:summaryOff="@string/vibrate_input_devices_summary"/> android:summary="@string/vibrate_input_devices_summary" /> </PreferenceCategory> Loading res/xml/sound_settings.xml +0 −1 Original line number Diff line number Diff line Loading @@ -90,7 +90,6 @@ <!-- Other sounds --> <PreferenceCategory android:key="other_sound_preferecence_category" android:title="@string/other_sound_category_preference_title" android:order="-50"> Loading src/com/android/settings/inputmethod/GameControllerPreferenceController.java +13 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.settings.inputmethod; import android.content.Context; import android.hardware.input.InputManager; import android.provider.Settings; import android.support.annotation.VisibleForTesting; import android.support.v14.preference.SwitchPreference; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; Loading @@ -31,11 +32,14 @@ import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnPause; import com.android.settingslib.core.lifecycle.events.OnResume; import java.util.List; public class GameControllerPreferenceController extends AbstractPreferenceController implements PreferenceControllerMixin, InputManager.InputDeviceListener, LifecycleObserver, OnResume, OnPause { public static final String PREF_KEY = "vibrate_input_devices"; @VisibleForTesting static final String PREF_KEY = "vibrate_input_devices"; private static final String CATEGORY_KEY = "game_controller_settings_category"; private final InputManager mIm; Loading Loading @@ -105,6 +109,14 @@ public class GameControllerPreferenceController extends AbstractPreferenceContro Settings.System.VIBRATE_INPUT_DEVICES, 1) > 0); } @Override public void updateNonIndexableKeys(List<String> keys) { if (!isAvailable()) { keys.add(CATEGORY_KEY); keys.add(PREF_KEY); } } @Override public void onInputDeviceAdded(int deviceId) { updateGameControllers(); Loading tests/robotests/src/com/android/settings/inputmethod/GameControllerPreferenceControllerTest.java +23 −5 Original line number Diff line number Diff line Loading @@ -16,12 +16,17 @@ package com.android.settings.inputmethod; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; import android.hardware.input.InputManager; import android.view.InputDevice; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; import com.android.settings.testutils.SettingsRobolectricTestRunner; import org.junit.Before; import org.junit.Test; Loading @@ -31,10 +36,9 @@ import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.annotation.Config; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @RunWith(SettingsRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) Loading Loading @@ -105,4 +109,18 @@ public class GameControllerPreferenceControllerTest { assertThat(mController.isAvailable()).isFalse(); } @Test public void updateNonIndexableKeys_shouldIncludeCategoryAndPrefKeys() { when(mInputManager.getInputDeviceIds()).thenReturn(new int[]{}); final List<String> nonIndexables = new ArrayList<>(); mController.updateNonIndexableKeys(nonIndexables); assertThat(mController.isAvailable()).isFalse(); assertThat(nonIndexables).containsExactlyElementsIn(Arrays.asList( GameControllerPreferenceController.PREF_KEY, mController.getPreferenceKey())); } } Loading
res/xml/language_and_input.xml +1 −2 Original line number Diff line number Diff line Loading @@ -83,8 +83,7 @@ <SwitchPreference android:key="vibrate_input_devices" android:title="@string/vibrate_input_devices" android:summaryOn="@string/vibrate_input_devices_summary" android:summaryOff="@string/vibrate_input_devices_summary"/> android:summary="@string/vibrate_input_devices_summary" /> </PreferenceCategory> Loading
res/xml/sound_settings.xml +0 −1 Original line number Diff line number Diff line Loading @@ -90,7 +90,6 @@ <!-- Other sounds --> <PreferenceCategory android:key="other_sound_preferecence_category" android:title="@string/other_sound_category_preference_title" android:order="-50"> Loading
src/com/android/settings/inputmethod/GameControllerPreferenceController.java +13 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.settings.inputmethod; import android.content.Context; import android.hardware.input.InputManager; import android.provider.Settings; import android.support.annotation.VisibleForTesting; import android.support.v14.preference.SwitchPreference; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; Loading @@ -31,11 +32,14 @@ import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnPause; import com.android.settingslib.core.lifecycle.events.OnResume; import java.util.List; public class GameControllerPreferenceController extends AbstractPreferenceController implements PreferenceControllerMixin, InputManager.InputDeviceListener, LifecycleObserver, OnResume, OnPause { public static final String PREF_KEY = "vibrate_input_devices"; @VisibleForTesting static final String PREF_KEY = "vibrate_input_devices"; private static final String CATEGORY_KEY = "game_controller_settings_category"; private final InputManager mIm; Loading Loading @@ -105,6 +109,14 @@ public class GameControllerPreferenceController extends AbstractPreferenceContro Settings.System.VIBRATE_INPUT_DEVICES, 1) > 0); } @Override public void updateNonIndexableKeys(List<String> keys) { if (!isAvailable()) { keys.add(CATEGORY_KEY); keys.add(PREF_KEY); } } @Override public void onInputDeviceAdded(int deviceId) { updateGameControllers(); Loading
tests/robotests/src/com/android/settings/inputmethod/GameControllerPreferenceControllerTest.java +23 −5 Original line number Diff line number Diff line Loading @@ -16,12 +16,17 @@ package com.android.settings.inputmethod; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; import android.hardware.input.InputManager; import android.view.InputDevice; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; import com.android.settings.testutils.SettingsRobolectricTestRunner; import org.junit.Before; import org.junit.Test; Loading @@ -31,10 +36,9 @@ import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.annotation.Config; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.never; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @RunWith(SettingsRobolectricTestRunner.class) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) Loading Loading @@ -105,4 +109,18 @@ public class GameControllerPreferenceControllerTest { assertThat(mController.isAvailable()).isFalse(); } @Test public void updateNonIndexableKeys_shouldIncludeCategoryAndPrefKeys() { when(mInputManager.getInputDeviceIds()).thenReturn(new int[]{}); final List<String> nonIndexables = new ArrayList<>(); mController.updateNonIndexableKeys(nonIndexables); assertThat(mController.isAvailable()).isFalse(); assertThat(nonIndexables).containsExactlyElementsIn(Arrays.asList( GameControllerPreferenceController.PREF_KEY, mController.getPreferenceKey())); } }