Merge "Fix IllegalStateException to get tile content after device rotate"
This commit is contained in:
@@ -22,6 +22,7 @@ import android.content.ComponentName;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
import com.android.internal.accessibility.AccessibilityShortcutController;
|
import com.android.internal.accessibility.AccessibilityShortcutController;
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
@@ -39,6 +40,7 @@ import com.android.settingslib.widget.MainSwitchPreference;
|
|||||||
*/
|
*/
|
||||||
public class OneHandedSettings extends AccessibilityShortcutPreferenceFragment {
|
public class OneHandedSettings extends AccessibilityShortcutPreferenceFragment {
|
||||||
|
|
||||||
|
private static final String TAG = "OneHandedSettings";
|
||||||
private static final String ONE_HANDED_SHORTCUT_KEY = "one_handed_shortcuts_preference";
|
private static final String ONE_HANDED_SHORTCUT_KEY = "one_handed_shortcuts_preference";
|
||||||
private static final String ONE_HANDED_ILLUSTRATION_KEY = "one_handed_header";
|
private static final String ONE_HANDED_ILLUSTRATION_KEY = "one_handed_header";
|
||||||
protected static final String ONE_HANDED_MAIN_SWITCH_KEY =
|
protected static final String ONE_HANDED_MAIN_SWITCH_KEY =
|
||||||
@@ -131,9 +133,15 @@ public class OneHandedSettings extends AccessibilityShortcutPreferenceFragment {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected CharSequence getTileTooltipContent(@QuickSettingsTooltipType int type) {
|
protected CharSequence getTileTooltipContent(@QuickSettingsTooltipType int type) {
|
||||||
|
final Context context = getContext();
|
||||||
|
if (context == null) {
|
||||||
|
Log.w(TAG, "OneHandedSettings not attached to a context.");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
return type == QuickSettingsTooltipType.GUIDE_TO_EDIT
|
return type == QuickSettingsTooltipType.GUIDE_TO_EDIT
|
||||||
? getText(R.string.accessibility_one_handed_mode_qs_tooltip_content)
|
? context.getText(R.string.accessibility_one_handed_mode_qs_tooltip_content)
|
||||||
: getText(R.string.accessibility_one_handed_mode_auto_added_qs_tooltip_content);
|
: context.getText(
|
||||||
|
R.string.accessibility_one_handed_mode_auto_added_qs_tooltip_content);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -143,7 +151,7 @@ public class OneHandedSettings extends AccessibilityShortcutPreferenceFragment {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String getLogTag() {
|
protected String getLogTag() {
|
||||||
return null;
|
return TAG;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -18,10 +18,18 @@ package com.android.settings.gestures;
|
|||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
|
import static org.mockito.Mockito.spy;
|
||||||
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
import android.provider.SearchIndexableResource;
|
import android.provider.SearchIndexableResource;
|
||||||
|
|
||||||
|
import androidx.test.core.app.ApplicationProvider;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
|
import com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
@@ -31,16 +39,36 @@ import org.robolectric.util.ReflectionHelpers;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
/** Tests for {@link OneHandedSettings}. */
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
public class OneHandedSettingsTest {
|
public class OneHandedSettingsTest {
|
||||||
|
|
||||||
|
private final Context mContext = ApplicationProvider.getApplicationContext();
|
||||||
private OneHandedSettings mSettings;
|
private OneHandedSettings mSettings;
|
||||||
private Context mContext;
|
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
mSettings = new OneHandedSettings();
|
mSettings = spy(new OneHandedSettings());
|
||||||
mContext = RuntimeEnvironment.application;
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getTileTooltipContent_returnsExpectedValues() {
|
||||||
|
// Simulate to call getTileTooltipContent after onDetach
|
||||||
|
assertThat(mSettings.getTileTooltipContent(QuickSettingsTooltipType.GUIDE_TO_EDIT))
|
||||||
|
.isNull();
|
||||||
|
// Simulate to call getTileTooltipContent after onAttach
|
||||||
|
when(mSettings.getContext()).thenReturn(mContext);
|
||||||
|
assertThat(mSettings.getTileTooltipContent(QuickSettingsTooltipType.GUIDE_TO_EDIT))
|
||||||
|
.isEqualTo(mContext.getText(
|
||||||
|
R.string.accessibility_one_handed_mode_qs_tooltip_content));
|
||||||
|
assertThat(mSettings.getTileTooltipContent(QuickSettingsTooltipType.GUIDE_TO_DIRECT_USE))
|
||||||
|
.isEqualTo(mContext.getText(
|
||||||
|
R.string.accessibility_one_handed_mode_auto_added_qs_tooltip_content));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getLogTag_returnsCorrectTag() {
|
||||||
|
assertThat(mSettings.getLogTag()).isEqualTo("OneHandedSettings");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
Reference in New Issue
Block a user