X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/02d08d0f81ba408aef027c08f9f9bfbb26fe3dca..3ecabe3ea7a657c3b5f23bf28d260f25d4f617dd:/src/com/owncloud/android/ui/activity/FileDisplayActivity.java diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 9896a924..ae8c9207 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -137,9 +137,9 @@ public class FileDisplayActivity extends FileActivity implements @Override protected void onCreate(Bundle savedInstanceState) { Log_OC.d(TAG, "onCreate() start"); - requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); + super.onCreate(savedInstanceState); - super.onCreate(savedInstanceState); // this calls onAccountChanged() when ownCloud Account is valid + requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); mHandler = new Handler(); @@ -176,26 +176,12 @@ public class FileDisplayActivity extends FileActivity implements mRightFragmentContainer = findViewById(R.id.right_fragment_container); if (savedInstanceState == null) { createMinFragments(); - if (!isRedirectingToSetupAccount()) { - initFragmentsWithFile(); - } } // Action bar setup mDirectories = new CustomArrayAdapter(this, R.layout.sherlock_spinner_dropdown_item); - OCFile currFile = getFile(); - if (mStorageManager != null) { - while(currFile != null && currFile.getFileName() != OCFile.PATH_SEPARATOR) { - if (currFile.isDirectory()) { - mDirectories.add(currFile.getFileName()); - } - currFile = mStorageManager.getFileById(currFile.getParentId()); - } - } - mDirectories.add(OCFile.PATH_SEPARATOR); - ActionBar actionBar = getSupportActionBar(); - actionBar.setHomeButtonEnabled(true); // mandatory since Android ICS, according to the official documentation - setSupportProgressBarIndeterminateVisibility(false); // always AFTER setContentView(...) ; to workaround bug in its implementation + getSupportActionBar().setHomeButtonEnabled(true); // mandatory since Android ICS, according to the official documentation + setSupportProgressBarIndeterminateVisibility(false); // always AFTER setContentView(...) ; to work around bug in its implementation Log_OC.d(TAG, "onCreate() end"); } @@ -226,15 +212,20 @@ public class FileDisplayActivity extends FileActivity implements } if (file == null) { // fall back to root folder - file = mStorageManager.getFileByPath(OCFile.PATH_SEPARATOR); // never should return null + file = mStorageManager.getFileByPath(OCFile.PATH_SEPARATOR); // never returns null } setFile(file); - - if (findViewById(android.R.id.content) != null && !stateWasRecovered) { + mDirectories.clear(); + while(file != null && file.getFileName() != OCFile.PATH_SEPARATOR) { + if (file.isDirectory()) { + mDirectories.add(file.getFileName()); + } + file = mStorageManager.getFileById(file.getParentId()); + } + mDirectories.add(OCFile.PATH_SEPARATOR); + if (!stateWasRecovered) { Log_OC.e(TAG, "Initializing Fragments in onAccountChanged.."); initFragmentsWithFile(); - } else { - Log_OC.e(TAG, "Fragment initializacion ignored in onAccountChanged due to lack of CONTENT VIEW"); } } else { @@ -257,6 +248,11 @@ public class FileDisplayActivity extends FileActivity implements Fragment secondFragment = chooseInitialSecondFragment(file); if (secondFragment != null) { setSecondFragment(secondFragment); + updateFragmentsVisibility(true); + updateNavigationElementsInActionBar(file); + + } else { + cleanSecondFragment(); } } else { @@ -352,8 +348,9 @@ public class FileDisplayActivity extends FileActivity implements FragmentTransaction tr = getSupportFragmentManager().beginTransaction(); tr.remove(second); tr.commit(); - updateFragmentsVisibility(false); } + updateFragmentsVisibility(false); + updateNavigationElementsInActionBar(null); } protected void refeshListOfFilesFragment() { @@ -578,7 +575,6 @@ public class FileDisplayActivity extends FileActivity implements setFile(listOfFiles.getCurrentFile()); } cleanSecondFragment(); - updateNavigationElementsInActionBar(null); } @Override @@ -589,14 +585,7 @@ public class FileDisplayActivity extends FileActivity implements outState.putParcelable(FileDisplayActivity.KEY_WAITING_TO_PREVIEW, mWaitingToPreview); Log_OC.d(TAG, "onSaveInstanceState() end"); } - - @Override - protected void onStart() { - super.onStart(); - FileFragment second = getSecondFragment(); - updateFragmentsVisibility(second != null); - updateNavigationElementsInActionBar((second == null) ? null : second.getFile()); - } + @Override protected void onResume() { @@ -930,7 +919,6 @@ public class FileDisplayActivity extends FileActivity implements public void onBrowsedDownTo(OCFile directory) { pushDirname(directory); cleanSecondFragment(); - updateNavigationElementsInActionBar(null); } /**