Loading src/com/android/settings/deviceinfo/BuildNumberPreferenceController.java +22 −1 Original line number Original line Diff line number Diff line Loading @@ -38,6 +38,7 @@ import com.android.settings.core.BasePreferenceController; import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.FeatureFactory; import com.android.settings.password.ChooseLockSettingsHelper; import com.android.settings.password.ChooseLockSettingsHelper; import com.android.settings.slices.Sliceable; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; Loading Loading @@ -91,7 +92,27 @@ public class BuildNumberPreferenceController extends BasePreferenceController im @Override @Override public int getAvailabilityStatus() { public int getAvailabilityStatus() { return AVAILABLE_UNSEARCHABLE; return AVAILABLE; } @Override public boolean isSliceable() { return true; } @Override public boolean isCopyableSlice() { return true; } @Override public boolean useDynamicSliceSummary() { return true; } @Override public void copy() { Sliceable.setCopyContent(mContext, getSummary(), mContext.getText(R.string.build_number)); } } @Override @Override Loading src/com/android/settings/deviceinfo/firmwareversion/SimpleBuildNumberPreferenceController.java +1 −34 Original line number Original line Diff line number Diff line Loading @@ -16,16 +16,10 @@ package com.android.settings.deviceinfo.firmwareversion; package com.android.settings.deviceinfo.firmwareversion; import static android.content.Context.CLIPBOARD_SERVICE; import android.content.ClipData; import android.content.ClipboardManager; import android.content.Context; import android.content.Context; import android.os.Build; import android.os.Build; import android.text.BidiFormatter; import android.text.BidiFormatter; import android.widget.Toast; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settings.core.BasePreferenceController; public class SimpleBuildNumberPreferenceController extends BasePreferenceController { public class SimpleBuildNumberPreferenceController extends BasePreferenceController { Loading @@ -37,38 +31,11 @@ public class SimpleBuildNumberPreferenceController extends BasePreferenceControl @Override @Override public int getAvailabilityStatus() { public int getAvailabilityStatus() { return AVAILABLE; return AVAILABLE_UNSEARCHABLE; } } @Override @Override public CharSequence getSummary() { public CharSequence getSummary() { return BidiFormatter.getInstance().unicodeWrap(Build.DISPLAY); return BidiFormatter.getInstance().unicodeWrap(Build.DISPLAY); } } @Override public boolean isSliceable() { return true; } @Override public boolean isCopyableSlice() { return true; } @Override public boolean useDynamicSliceSummary() { return true; } @Override public void copy() { final ClipboardManager clipboard = (ClipboardManager) mContext.getSystemService( CLIPBOARD_SERVICE); final ClipData clip = ClipData.newPlainText("text", getSummary()); clipboard.setPrimaryClip(clip); final String toast = mContext.getString(R.string.copyable_slice_toast, mContext.getText(R.string.build_number)); Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show(); } } } tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java +13 −0 Original line number Original line Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.settings.deviceinfo; package com.android.settings.deviceinfo; import static android.content.Context.CLIPBOARD_SERVICE; import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.any; Loading @@ -24,6 +26,7 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify; import android.app.Activity; import android.app.Activity; import android.content.ClipboardManager; import android.content.Context; import android.content.Context; import android.os.Process; import android.os.Process; import android.os.UserManager; import android.os.UserManager; Loading Loading @@ -190,4 +193,14 @@ public class BuildNumberPreferenceControllerTest { assertThat(activityResultHandled).isTrue(); assertThat(activityResultHandled).isTrue(); assertThat(DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)).isTrue(); assertThat(DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)).isTrue(); } } @Test public void copy_shouldCopyBuildNumberToClipboard() { mController.copy(); final ClipboardManager clipboard = (ClipboardManager) mContext.getSystemService( CLIPBOARD_SERVICE); final CharSequence data = clipboard.getPrimaryClip().getItemAt(0).getText(); assertThat(data.toString()).isEqualTo(mController.getSummary()); } } } tests/robotests/src/com/android/settings/deviceinfo/firmwareversion/SimpleBuildNumberPreferenceControllerTest.java +3 −9 Original line number Original line Diff line number Diff line Loading @@ -16,11 +16,10 @@ package com.android.settings.deviceinfo.firmwareversion; package com.android.settings.deviceinfo.firmwareversion; import static android.content.Context.CLIPBOARD_SERVICE; import static com.android.settings.core.BasePreferenceController.AVAILABLE_UNSEARCHABLE; import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat; import android.content.ClipboardManager; import android.content.Context; import android.content.Context; import org.junit.Before; import org.junit.Before; Loading @@ -45,12 +44,7 @@ public class SimpleBuildNumberPreferenceControllerTest { } } @Test @Test public void copy_shouldCopyBuildNumberToClipboard() { public void getAvailabilityStatus_unsearchable() { mController.copy(); assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE_UNSEARCHABLE); final ClipboardManager clipboard = (ClipboardManager) mContext.getSystemService( CLIPBOARD_SERVICE); final CharSequence data = clipboard.getPrimaryClip().getItemAt(0).getText(); assertThat(data.toString()).isEqualTo(mController.getSummary()); } } } } Loading
src/com/android/settings/deviceinfo/BuildNumberPreferenceController.java +22 −1 Original line number Original line Diff line number Diff line Loading @@ -38,6 +38,7 @@ import com.android.settings.core.BasePreferenceController; import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.FeatureFactory; import com.android.settings.password.ChooseLockSettingsHelper; import com.android.settings.password.ChooseLockSettingsHelper; import com.android.settings.slices.Sliceable; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.RestrictedLockUtilsInternal; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; Loading Loading @@ -91,7 +92,27 @@ public class BuildNumberPreferenceController extends BasePreferenceController im @Override @Override public int getAvailabilityStatus() { public int getAvailabilityStatus() { return AVAILABLE_UNSEARCHABLE; return AVAILABLE; } @Override public boolean isSliceable() { return true; } @Override public boolean isCopyableSlice() { return true; } @Override public boolean useDynamicSliceSummary() { return true; } @Override public void copy() { Sliceable.setCopyContent(mContext, getSummary(), mContext.getText(R.string.build_number)); } } @Override @Override Loading
src/com/android/settings/deviceinfo/firmwareversion/SimpleBuildNumberPreferenceController.java +1 −34 Original line number Original line Diff line number Diff line Loading @@ -16,16 +16,10 @@ package com.android.settings.deviceinfo.firmwareversion; package com.android.settings.deviceinfo.firmwareversion; import static android.content.Context.CLIPBOARD_SERVICE; import android.content.ClipData; import android.content.ClipboardManager; import android.content.Context; import android.content.Context; import android.os.Build; import android.os.Build; import android.text.BidiFormatter; import android.text.BidiFormatter; import android.widget.Toast; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import com.android.settings.core.BasePreferenceController; public class SimpleBuildNumberPreferenceController extends BasePreferenceController { public class SimpleBuildNumberPreferenceController extends BasePreferenceController { Loading @@ -37,38 +31,11 @@ public class SimpleBuildNumberPreferenceController extends BasePreferenceControl @Override @Override public int getAvailabilityStatus() { public int getAvailabilityStatus() { return AVAILABLE; return AVAILABLE_UNSEARCHABLE; } } @Override @Override public CharSequence getSummary() { public CharSequence getSummary() { return BidiFormatter.getInstance().unicodeWrap(Build.DISPLAY); return BidiFormatter.getInstance().unicodeWrap(Build.DISPLAY); } } @Override public boolean isSliceable() { return true; } @Override public boolean isCopyableSlice() { return true; } @Override public boolean useDynamicSliceSummary() { return true; } @Override public void copy() { final ClipboardManager clipboard = (ClipboardManager) mContext.getSystemService( CLIPBOARD_SERVICE); final ClipData clip = ClipData.newPlainText("text", getSummary()); clipboard.setPrimaryClip(clip); final String toast = mContext.getString(R.string.copyable_slice_toast, mContext.getText(R.string.build_number)); Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show(); } } }
tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java +13 −0 Original line number Original line Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.settings.deviceinfo; package com.android.settings.deviceinfo; import static android.content.Context.CLIPBOARD_SERVICE; import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.any; Loading @@ -24,6 +26,7 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify; import android.app.Activity; import android.app.Activity; import android.content.ClipboardManager; import android.content.Context; import android.content.Context; import android.os.Process; import android.os.Process; import android.os.UserManager; import android.os.UserManager; Loading Loading @@ -190,4 +193,14 @@ public class BuildNumberPreferenceControllerTest { assertThat(activityResultHandled).isTrue(); assertThat(activityResultHandled).isTrue(); assertThat(DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)).isTrue(); assertThat(DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)).isTrue(); } } @Test public void copy_shouldCopyBuildNumberToClipboard() { mController.copy(); final ClipboardManager clipboard = (ClipboardManager) mContext.getSystemService( CLIPBOARD_SERVICE); final CharSequence data = clipboard.getPrimaryClip().getItemAt(0).getText(); assertThat(data.toString()).isEqualTo(mController.getSummary()); } } }
tests/robotests/src/com/android/settings/deviceinfo/firmwareversion/SimpleBuildNumberPreferenceControllerTest.java +3 −9 Original line number Original line Diff line number Diff line Loading @@ -16,11 +16,10 @@ package com.android.settings.deviceinfo.firmwareversion; package com.android.settings.deviceinfo.firmwareversion; import static android.content.Context.CLIPBOARD_SERVICE; import static com.android.settings.core.BasePreferenceController.AVAILABLE_UNSEARCHABLE; import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat; import android.content.ClipboardManager; import android.content.Context; import android.content.Context; import org.junit.Before; import org.junit.Before; Loading @@ -45,12 +44,7 @@ public class SimpleBuildNumberPreferenceControllerTest { } } @Test @Test public void copy_shouldCopyBuildNumberToClipboard() { public void getAvailabilityStatus_unsearchable() { mController.copy(); assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE_UNSEARCHABLE); final ClipboardManager clipboard = (ClipboardManager) mContext.getSystemService( CLIPBOARD_SERVICE); final CharSequence data = clipboard.getPrimaryClip().getItemAt(0).getText(); assertThat(data.toString()).isEqualTo(mController.getSummary()); } } } }