Browse Source

Fixed (tablet landscape): video playback is resumed in the moment it was left when the user pressed HOME

David A. Velasco 12 năm trước cách đây
mục cha
commit
2a42651463

+ 2 - 1
src/com/owncloud/android/ui/activity/FileDisplayActivity.java

@@ -214,7 +214,7 @@ public class FileDisplayActivity extends SherlockFragmentActivity implements
         mFileList = (OCFileListFragment) getSupportFragmentManager().findFragmentById(R.id.fileList);
         mDualPane = (findViewById(R.id.file_details_container) != null);
         if (mDualPane) {
-            initFileDetailsInDualPane();
+            if (savedInstanceState == null) initFileDetailsInDualPane();
         } else {
             // quick patchES to fix problem in turn from landscape to portrait, when a file is selected in the right pane
             // TODO serious refactorization in activities and fragments providing file browsing and handling 
@@ -579,6 +579,7 @@ public class FileDisplayActivity extends SherlockFragmentActivity implements
         Log.d(getClass().toString(), "onSaveInstanceState() end");
     }
 
+    
     @Override
     public void onResume() {
         Log.d(getClass().toString(), "onResume() start");

+ 4 - 2
src/com/owncloud/android/ui/preview/PreviewMediaFragment.java

@@ -235,8 +235,10 @@ public class PreviewMediaFragment extends SherlockFragment implements
         outState.putParcelable(PreviewMediaFragment.EXTRA_ACCOUNT, mAccount);
         
         if (mFile.isVideo()) {
-            outState.putInt(PreviewMediaFragment.EXTRA_PLAY_POSITION , mVideoPreview.getCurrentPosition());
-            outState.putBoolean(PreviewMediaFragment.EXTRA_PLAYING , mVideoPreview.isPlaying());
+            mSavedPlaybackPosition = mVideoPreview.getCurrentPosition();
+            mAutoplay = mVideoPreview.isPlaying();
+            outState.putInt(PreviewMediaFragment.EXTRA_PLAY_POSITION , mSavedPlaybackPosition);
+            outState.putBoolean(PreviewMediaFragment.EXTRA_PLAYING , mAutoplay);
         } else {
             outState.putInt(PreviewMediaFragment.EXTRA_PLAY_POSITION , mMediaServiceBinder.getCurrentPosition());
             outState.putBoolean(PreviewMediaFragment.EXTRA_PLAYING , mMediaServiceBinder.isPlaying());