X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/fdf6a1f3ce51d6ae6ae6e12a46ab8719d650baca..c39e851f5eada08c93d3a57d41054ea112b4bfcf:/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 f65a05be..6cfa56c5 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -79,9 +79,8 @@ import com.owncloud.android.operations.SynchronizeFileOperation; import com.owncloud.android.operations.SynchronizeFolderOperation; import com.owncloud.android.operations.UnshareLinkOperation; import com.owncloud.android.syncadapter.FileSyncAdapter; -import com.owncloud.android.ui.dialog.EditNameDialog; +import com.owncloud.android.ui.dialog.CreateFolderDialogFragment; import com.owncloud.android.ui.dialog.SslUntrustedCertDialog; -import com.owncloud.android.ui.dialog.EditNameDialog.EditNameDialogListener; import com.owncloud.android.ui.dialog.SslUntrustedCertDialog.OnSslUntrustedCertListener; import com.owncloud.android.ui.fragment.FileDetailFragment; import com.owncloud.android.ui.fragment.FileFragment; @@ -102,8 +101,7 @@ import com.owncloud.android.utils.Log_OC; */ public class FileDisplayActivity extends HookActivity implements -FileFragment.ContainerActivity, OnNavigationListener, -OnSslUntrustedCertListener, EditNameDialogListener { +FileFragment.ContainerActivity, OnNavigationListener, OnSslUntrustedCertListener { private ArrayAdapter mDirectories; @@ -378,7 +376,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { return null; } - protected FileFragment getSecondFragment() { + public FileFragment getSecondFragment() { Fragment second = getSupportFragmentManager().findFragmentByTag(FileDisplayActivity.TAG_SECOND_FRAGMENT); if (second != null) { return (FileFragment)second; @@ -453,7 +451,8 @@ OnSslUntrustedCertListener, EditNameDialogListener { boolean retval = true; switch (item.getItemId()) { case R.id.action_create_dir: { - EditNameDialog dialog = EditNameDialog.newInstance(getString(R.string.uploader_info_dirname), "", -1, -1, this); + CreateFolderDialogFragment dialog = + CreateFolderDialogFragment.newInstance(getCurrentDir()); dialog.show(getSupportFragmentManager(), "createdirdialog"); break; } @@ -709,6 +708,9 @@ OnSslUntrustedCertListener, EditNameDialogListener { unregisterReceiver(mDownloadFinishReceiver); mDownloadFinishReceiver = null; } + + dismissLoadingDialog(); + Log_OC.d(TAG, "onPause() end"); } @@ -983,7 +985,11 @@ OnSslUntrustedCertListener, EditNameDialogListener { Toast.LENGTH_LONG); msg.show(); } - ((FileDetailFragment)details).updateFileDetails(false, false); + if (uploadWasFine || getFile().fileExists()) { + ((FileDetailFragment)details).updateFileDetails(false, true); + } else { + cleanSecondFragment(); + } // Force the preview if the file is an image if (uploadWasFine && PreviewImageFragment.canBePreviewed(getFile())) { @@ -1140,8 +1146,12 @@ OnSslUntrustedCertListener, EditNameDialogListener { if (component.equals(new ComponentName(FileDisplayActivity.this, FileDownloader.class))) { Log_OC.d(TAG, "Download service connected"); mDownloaderBinder = (FileDownloaderBinder) service; - if (mWaitingToPreview != null) { - requestForDownload(); + if (mWaitingToPreview != null) + if (getStorageManager() != null) { + mWaitingToPreview = getStorageManager().getFileById(mWaitingToPreview.getFileId()); // update the file + if (!mWaitingToPreview.isDown()) { + requestForDownload(); + } } } else if (component.equals(new ComponentName(FileDisplayActivity.this, FileUploader.class))) { @@ -1293,12 +1303,16 @@ OnSslUntrustedCertListener, EditNameDialogListener { OCFile removedFile = operation.getFile(); FileFragment second = getSecondFragment(); if (second != null && removedFile.equals(second.getFile())) { + if (second instanceof PreviewMediaFragment) { + ((PreviewMediaFragment)second).stopPreview(true); + } + setFile(getStorageManager().getFileById(removedFile.getParentId())); cleanSecondFragment(); } if (getStorageManager().getFileById(removedFile.getParentId()).equals(getCurrentDir())) { refreshListOfFilesFragment(); } - + invalidateOptionsMenu(); } else { Toast msg = Toast.makeText(this, R.string.remove_fail_msg, Toast.LENGTH_LONG); msg.show(); @@ -1349,9 +1363,21 @@ OnSslUntrustedCertListener, EditNameDialogListener { OCFile renamedFile = operation.getFile(); if (result.isSuccess()) { FileFragment details = getSecondFragment(); - if (details != null && details instanceof FileDetailFragment && renamedFile.equals(details.getFile()) ) { - ((FileDetailFragment) details).updateFileDetails(renamedFile, getAccount()); + if (details != null) + if (details instanceof FileDetailFragment && renamedFile.equals(details.getFile()) ) { + ((FileDetailFragment) details).updateFileDetails(renamedFile, getAccount()); + showDetails(renamedFile); + + } else if (details instanceof PreviewMediaFragment && renamedFile.equals(details.getFile())) { + ((PreviewMediaFragment) details).updateFile(renamedFile); + if (PreviewMediaFragment.canBePreviewed(renamedFile)) { + int position = ((PreviewMediaFragment)details).getPosition(); + startMediaPreview(renamedFile, position, true); + } else { + getFileOperationsHelper().openFile(renamedFile); + } } + if (getStorageManager().getFileById(renamedFile.getParentId()).equals(getCurrentDir())) { refreshListOfFilesFragment(); } @@ -1415,21 +1441,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { } - public void onDismiss(EditNameDialog dialog) { - if (dialog.getResult()) { - String newDirectoryName = dialog.getNewFilename().trim(); - Log_OC.d(TAG, "'create directory' dialog dismissed with new name " + newDirectoryName); - if (newDirectoryName.length() > 0) { - String path = getCurrentDir().getRemotePath(); - - // Create directory - path += newDirectoryName + OCFile.PATH_SEPARATOR; - getFileOperationsHelper().createFolder(path, false); - } - } - } - - private void requestForDownload() { Account account = getAccount(); if (!mDownloaderBinder.isDownloading(account, mWaitingToPreview)) { @@ -1563,10 +1574,12 @@ OnSslUntrustedCertListener, EditNameDialogListener { Account account = getAccount(); if (mDownloaderBinder != null && mDownloaderBinder.isDownloading(account, file)) { mDownloaderBinder.cancel(account, file); + refreshListOfFilesFragment(); onTransferStateChanged(file, false, false); } else if (mUploaderBinder != null && mUploaderBinder.isUploading(account, file)) { mUploaderBinder.cancel(account, file); + refreshListOfFilesFragment(); if (!file.fileExists()) { cleanSecondFragment();