From: Lennart Rosam Date: Fri, 25 May 2012 05:01:12 +0000 (+0200) Subject: Fixed navigation behaviour: HomeAsUp takes you up a dir X-Git-Tag: oc-android-1.4.3~383 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/b735fc9458a32ec70547ac830b82dcc29f1074cc?ds=sidebyside Fixed navigation behaviour: HomeAsUp takes you up a dir --- diff --git a/res/menu/menu.xml b/res/menu/menu.xml index c148bd36..590eabd6 100644 --- a/res/menu/menu.xml +++ b/res/menu/menu.xml @@ -1,9 +1,10 @@ - - + + - - + + + diff --git a/res/values/strings.xml b/res/values/strings.xml index c33e085f..4eb8c62b 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -15,6 +15,12 @@ Account Setup There are no ownCloud accounts on your device. In order to use this App, you need to create one. + Sync account + Upload file + Create directory + Search + Settings + General Device tracking Add new session diff --git a/src/eu/alefzero/owncloud/ui/activity/FileDisplayActivity.java b/src/eu/alefzero/owncloud/ui/activity/FileDisplayActivity.java index 47dae5fa..93cf6495 100644 --- a/src/eu/alefzero/owncloud/ui/activity/FileDisplayActivity.java +++ b/src/eu/alefzero/owncloud/ui/activity/FileDisplayActivity.java @@ -19,10 +19,8 @@ package eu.alefzero.owncloud.ui.activity; import java.io.File; -import java.net.URLDecoder; import java.net.URLEncoder; import java.util.ArrayList; -import java.util.Arrays; import android.accounts.Account; import android.accounts.AccountManager; @@ -142,11 +140,14 @@ public class FileDisplayActivity extends SherlockFragmentActivity implements ACTION_SELECT_FILE); break; } - + case R.id.action_accounts: { + Intent accountIntent = new Intent(this, AccountSelectActivity.class); + startActivity(accountIntent); + } case android.R.id.home: { - Intent i = new Intent(this, AccountSelectActivity.class); - startActivity(i); - finish(); + if(mCurrentDir != null && mCurrentDir.getParentId() != 0){ + onBackPressed(); + } break; } default: @@ -215,6 +216,11 @@ public class FileDisplayActivity extends SherlockFragmentActivity implements popDirname(); mFileList.onNavigateUp(); mCurrentDir = mFileList.getCurrentFile(); + + if(mCurrentDir.getParentId() == 0){ + ActionBar actionBar = getSupportActionBar(); + actionBar.setDisplayHomeAsUpEnabled(false); + } } @Override @@ -312,7 +318,12 @@ public class FileDisplayActivity extends SherlockFragmentActivity implements action_bar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); action_bar.setDisplayShowTitleEnabled(false); action_bar.setListNavigationCallbacks(mDirectories, this); - action_bar.setDisplayHomeAsUpEnabled(true); + if(mCurrentDir != null && mCurrentDir.getParentId() != 0){ + action_bar.setDisplayHomeAsUpEnabled(true); + } else { + action_bar.setDisplayHomeAsUpEnabled(false); + } + // List dir here mFileList.listDirectory(mCurrentDir); diff --git a/src/eu/alefzero/owncloud/ui/fragment/FileListFragment.java b/src/eu/alefzero/owncloud/ui/fragment/FileListFragment.java index 474416ea..d9ef3daa 100644 --- a/src/eu/alefzero/owncloud/ui/fragment/FileListFragment.java +++ b/src/eu/alefzero/owncloud/ui/fragment/FileListFragment.java @@ -19,6 +19,8 @@ package eu.alefzero.owncloud.ui.fragment; import java.util.Vector; +import com.actionbarsherlock.app.ActionBar; + import android.accounts.Account; import android.content.Intent; import android.os.Bundle; @@ -92,6 +94,8 @@ public class FileListFragment extends FragmentListView { if (file.getMimetype().equals("DIR")) { mFile = file; ((FileDisplayActivity) getActivity()).pushDirname(file); + ActionBar actionBar = ((FileDisplayActivity) getActivity()).getSupportActionBar(); + actionBar.setDisplayHomeAsUpEnabled(true); listDirectory(file); resetFileFragment(); return;