From 46ece7f58198993642afeca46849dcffe36c1d5f Mon Sep 17 00:00:00 2001 From: Ludovic Fauvet <etix@videolan.org> Date: Wed, 10 Oct 2012 16:55:11 +0200 Subject: [PATCH] MainActivity: Fix an IllegalStateException "Can not perform this action after onSaveInstanceState" Using the support/compat library, fragments *must* be restored in onResumeFragments and not onResume. --- .../src/org/videolan/vlc/gui/MainActivity.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/vlc-android/src/org/videolan/vlc/gui/MainActivity.java b/vlc-android/src/org/videolan/vlc/gui/MainActivity.java index 83d4300878..0889327981 100644 --- a/vlc-android/src/org/videolan/vlc/gui/MainActivity.java +++ b/vlc-android/src/org/videolan/vlc/gui/MainActivity.java @@ -285,6 +285,17 @@ public class MainActivity extends SherlockFragmentActivity { if (getIntent().hasExtra(AudioService.START_FROM_NOTIFICATION)) getIntent().removeExtra(AudioService.START_FROM_NOTIFICATION); + /* Load media items from database and storage */ + if (mScanNeeded) + MediaLibrary.getInstance(this).loadMediaItems(this); + } + + + + @Override + protected void onResumeFragments() { + super.onResumeFragments(); + /* Restore last view */ Fragment current = getSupportFragmentManager() .findFragmentById(R.id.fragment_placeholder); @@ -308,10 +319,6 @@ public class MainActivity extends SherlockFragmentActivity { ft.replace(R.id.fragment_placeholder, getFragment(mCurrentFragment)); ft.commit(); } - - /* Load media items from database and storage */ - if (mScanNeeded) - MediaLibrary.getInstance(this).loadMediaItems(this); } /** -- GitLab