import android.preference.PreferenceManager;
import android.provider.MediaStore;
import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.content.LocalBroadcastManager;
import android.util.Log;
import com.owncloud.android.syncadapter.FileSyncAdapter;
import com.owncloud.android.ui.dialog.EditNameDialog;
import com.owncloud.android.ui.dialog.EditNameDialog.EditNameDialogListener;
-import com.owncloud.android.ui.dialog.LoadingDialog;
import com.owncloud.android.ui.dialog.SslValidatorDialog;
import com.owncloud.android.ui.dialog.SslValidatorDialog.OnSslValidatorListener;
import com.owncloud.android.ui.fragment.FileDetailFragment;
* @author David A. Velasco
*/
-public class FileDisplayActivity extends FileActivity implements
+public class FileDisplayActivity extends HookActivity implements
OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNavigationListener, OnSslValidatorListener, EditNameDialogListener {
private ArrayAdapter<String> mDirectories;
private static final int DIALOG_SSL_VALIDATOR = 2;
private static final int DIALOG_CERT_NOT_SAVED = 3;
- private static final String DIALOG_WAIT_TAG = "DIALOG_WAIT";
-
public static final String ACTION_DETAILS = "com.owncloud.android.ui.activity.action.DETAILS";
private static final int ACTION_SELECT_CONTENT_FROM_APPS = 1;
// the next operation triggers a new call to this method, but it's necessary to
// ensure that the name exposed in the action bar is the current directory when the
// user selected it in the navigation list
- getSupportActionBar().setSelectedNavigationItem(0);
+ if (getSupportActionBar().getNavigationMode() == ActionBar.NAVIGATION_MODE_LIST && itemPosition != 0)
+ getSupportActionBar().setSelectedNavigationItem(0);
}
return true;
}
/**
- * Show loading dialog
- */
- public void showLoadingDialog() {
- // Construct dialog
- LoadingDialog loading = new LoadingDialog(getResources().getString(R.string.wait_a_moment));
- FragmentManager fm = getSupportFragmentManager();
- FragmentTransaction ft = fm.beginTransaction();
- loading.show(ft, DIALOG_WAIT_TAG);
-
- }
-
- /**
- * Dismiss loading dialog
- */
- public void dismissLoadingDialog(){
- Fragment frag = getSupportFragmentManager().findFragmentByTag(DIALOG_WAIT_TAG);
- if (frag != null) {
- LoadingDialog loading = (LoadingDialog) frag;
- loading.dismiss();
- }
- }
-
-
- /**
* Translates a content URI of an image to a physical path
* on the disk
* @param uri The URI to resolve
((TextView) v).setTextColor(getResources().getColorStateList(
android.R.color.white));
+
+ fixRoot((TextView) v );
return v;
}
((TextView) v).setTextColor(getResources().getColorStateList(
android.R.color.white));
+ fixRoot((TextView) v );
return v;
}
+ private void fixRoot(TextView v) {
+ if (v.getText().equals(OCFile.PATH_SEPARATOR)) {
+ v.setText(R.string.default_display_name_for_root_folder);
+ }
+ }
+
}
private class SyncBroadcastReceiver extends BroadcastReceiver {
if (chosenFile == null || mDualPane) {
// only list of files - set for browsing through folders
OCFile currentDir = getCurrentDir();
- actionBar.setDisplayHomeAsUpEnabled(currentDir != null && currentDir.getParentId() != 0);
- actionBar.setDisplayShowTitleEnabled(false);
- actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
+ boolean noRoot = (currentDir != null && currentDir.getParentId() != 0);
+ actionBar.setDisplayHomeAsUpEnabled(noRoot);
+ actionBar.setDisplayShowTitleEnabled(!noRoot);
+ if (!noRoot) {
+ actionBar.setTitle(getString(R.string.default_display_name_for_root_folder));
+ }
+ actionBar.setNavigationMode(!noRoot ? ActionBar.NAVIGATION_MODE_STANDARD : ActionBar.NAVIGATION_MODE_LIST);
actionBar.setListNavigationCallbacks(mDirectories, this); // assuming mDirectories is updated
} else {
*/
@Override
public void onRemoteOperationFinish(RemoteOperation operation, RemoteOperationResult result) {
+ super.onRemoteOperationFinish(operation, result);
+
if (operation instanceof RemoveFileOperation) {
onRemoveFileOperationFinish((RemoveFileOperation)operation, result);
private void onCreateShareOperationFinish(CreateShareOperation operation, RemoteOperationResult result) {
- if (result.getCode() == ResultCode.FILE_NOT_FOUND) {
- // Show a Message
- Toast t = Toast.makeText(this, getString(R.string.share_link_file_no_exist), Toast.LENGTH_LONG);
- t.show();
-
- } else if (result.isSuccess()) {
+ if (result.isSuccess()) {
refeshListOfFilesFragment();
-
- Intent sendIntent = operation.getSendIntent();
- startActivity(sendIntent);
}
-
}
+
/**
* Updates the view associated to the activity after the finish of an operation trying to remove a
* file.