Snap for 4871710 from 8700777839 to qt-release

Change-Id: I770d2e76bb31dfcd93d8b10003f45430c5e5d189
This commit is contained in:
android-build-team Robot
2018-06-30 03:01:46 +00:00
3 changed files with 31 additions and 1 deletions

View File

@@ -56,6 +56,7 @@ public class StorageWizardInit extends StorageWizardBase {
if (!mDisk.isAdoptable()) {
// If not adoptable, we only have one choice
mInternal.setEnabled(false);
onNavigateExternal(null);
} else if (!mIsPermittedToAdopt) {
// TODO: Show a message about why this is disabled for guest and

View File

@@ -48,10 +48,12 @@ public class VideoPreference extends Preference {
MediaPlayer mMediaPlayer;
@VisibleForTesting
boolean mAnimationAvailable;
private boolean mVideoReady;
@VisibleForTesting
boolean mVideoReady;
private boolean mVideoPaused;
private float mAspectRadio = 1.0f;
private int mPreviewResource;
private boolean mViewVisible;
public VideoPreference(Context context, AttributeSet attrs) {
super(context, attrs);
@@ -144,6 +146,9 @@ public class VideoPreference extends Preference {
@Override
public void onSurfaceTextureUpdated(SurfaceTexture surfaceTexture) {
if (!mViewVisible) {
return;
}
if (mVideoReady) {
if (imageView.getVisibility() == View.VISIBLE) {
imageView.setVisibility(View.GONE);
@@ -172,6 +177,7 @@ public class VideoPreference extends Preference {
}
public void onViewVisible(boolean videoPaused) {
mViewVisible = true;
mVideoPaused = videoPaused;
if (mVideoReady && mMediaPlayer != null && !mMediaPlayer.isPlaying()) {
mMediaPlayer.seekTo(0);
@@ -179,6 +185,7 @@ public class VideoPreference extends Preference {
}
public void onViewInvisible() {
mViewVisible = false;
if (mMediaPlayer != null && mMediaPlayer.isPlaying()) {
mMediaPlayer.pause();
}

View File

@@ -17,11 +17,17 @@
package com.android.settings.widget;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.graphics.SurfaceTexture;
import android.media.MediaPlayer;
import android.view.LayoutInflater;
import android.view.TextureView;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
@@ -70,4 +76,20 @@ public class VideoPreferenceTest {
(AspectRatioFrameLayout) mPreferenceViewHolder.findViewById(R.id.video_container);
assertThat(layout.mAspectRatio).isWithin(0.01f).of(VIDEO_WIDTH / (float) VIDEO_HEIGHT);
}
@Test
public void onSurfaceTextureUpdated_viewInvisible_shouldNotStartPlayingVideo() {
final TextureView video =
(TextureView) mPreferenceViewHolder.findViewById(R.id.video_texture_view);
mVideoPreference.mAnimationAvailable = true;
mVideoPreference.mVideoReady = true;
mVideoPreference.onBindViewHolder(mPreferenceViewHolder);
mVideoPreference.onViewInvisible();
when(mMediaPlayer.isPlaying()).thenReturn(false);
final TextureView.SurfaceTextureListener listener = video.getSurfaceTextureListener();
listener.onSurfaceTextureUpdated(mock(SurfaceTexture.class));
verify(mMediaPlayer, never()).start();
}
}