X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/b86059bf83c77a9b033dffbeda38c3e9e4fd538e..f359d11a4d2c0b98de9687722f1487dcdad47a2b:/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 2fbf1b8b..a96f6345 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -78,7 +78,6 @@ import com.owncloud.android.operations.RenameFileOperation; import com.owncloud.android.operations.SynchronizeFileOperation; import com.owncloud.android.operations.SynchronizeFolderOperation; import com.owncloud.android.operations.UnshareLinkOperation; -import com.owncloud.android.services.OperationsService; import com.owncloud.android.syncadapter.FileSyncAdapter; import com.owncloud.android.ui.dialog.EditNameDialog; import com.owncloud.android.ui.dialog.SslUntrustedCertDialog; @@ -111,7 +110,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { private SyncBroadcastReceiver mSyncBroadcastReceiver; private UploadFinishReceiver mUploadFinishReceiver; private DownloadFinishReceiver mDownloadFinishReceiver; - //private OperationsServiceReceiver mOperationsServiceReceiver; private RemoteOperationResult mLastSslUntrustedServerResult = null; private boolean mDualPane; @@ -120,12 +118,10 @@ OnSslUntrustedCertListener, EditNameDialogListener { private static final String KEY_WAITING_TO_PREVIEW = "WAITING_TO_PREVIEW"; private static final String KEY_SYNC_IN_PROGRESS = "SYNC_IN_PROGRESS"; - //private static final String KEY_REFRESH_SHARES_IN_PROGRESS = "SHARES_IN_PROGRESS"; private static final String KEY_WAITING_TO_SEND = "WAITING_TO_SEND"; public static final int DIALOG_SHORT_WAIT = 0; private static final int DIALOG_CHOOSE_UPLOAD_SOURCE = 1; - //private static final int DIALOG_SSL_VALIDATOR = 2; private static final int DIALOG_CERT_NOT_SAVED = 2; public static final String ACTION_DETAILS = "com.owncloud.android.ui.activity.action.DETAILS"; @@ -141,7 +137,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { private OCFile mWaitingToPreview; private boolean mSyncInProgress = false; - //private boolean mRefreshSharesInProgress = false; private String DIALOG_UNTRUSTED_CERT; @@ -170,13 +165,11 @@ OnSslUntrustedCertListener, EditNameDialogListener { if(savedInstanceState != null) { mWaitingToPreview = (OCFile) savedInstanceState.getParcelable(FileDisplayActivity.KEY_WAITING_TO_PREVIEW); mSyncInProgress = savedInstanceState.getBoolean(KEY_SYNC_IN_PROGRESS); - //mRefreshSharesInProgress = savedInstanceState.getBoolean(KEY_REFRESH_SHARES_IN_PROGRESS); mWaitingToSend = (OCFile) savedInstanceState.getParcelable(FileDisplayActivity.KEY_WAITING_TO_SEND); } else { mWaitingToPreview = null; mSyncInProgress = false; - //mRefreshSharesInProgress = false; mWaitingToSend = null; } @@ -208,9 +201,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { protected void onStart() { super.onStart(); getSupportActionBar().setIcon(DisplayUtils.getSeasonalIconId()); - /* - refeshListOfFilesFragment(); - */ } @Override @@ -388,7 +378,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; @@ -396,7 +386,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { return null; } - public void cleanSecondFragment() { + protected void cleanSecondFragment() { Fragment second = getSecondFragment(); if (second != null) { FragmentTransaction tr = getSupportFragmentManager().beginTransaction(); @@ -407,14 +397,12 @@ OnSslUntrustedCertListener, EditNameDialogListener { updateNavigationElementsInActionBar(null); } - /* TODO WIP COMMENT - protected void refeshListOfFilesFragment() { + protected void refreshListOfFilesFragment() { OCFileListFragment fileListFragment = getListOfFilesFragment(); if (fileListFragment != null) { fileListFragment.listDirectory(); } } - */ protected void refreshSecondFragment(String downloadEvent, String downloadedRemotePath, boolean success) { FileFragment secondFragment = getSecondFragment(); @@ -682,7 +670,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { // Listen for sync messages IntentFilter syncIntentFilter = new IntentFilter(FileSyncAdapter.EVENT_FULL_SYNC_START); syncIntentFilter.addAction(FileSyncAdapter.EVENT_FULL_SYNC_END); - //syncIntentFilter.addAction(FileSyncAdapter.EVENT_FULL_SYNC_FOLDER_SIZE_SYNCED); syncIntentFilter.addAction(FileSyncAdapter.EVENT_FULL_SYNC_FOLDER_CONTENTS_SYNCED); syncIntentFilter.addAction(SynchronizeFolderOperation.EVENT_SINGLE_FOLDER_CONTENTS_SYNCED); syncIntentFilter.addAction(SynchronizeFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED); @@ -701,14 +688,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { mDownloadFinishReceiver = new DownloadFinishReceiver(); registerReceiver(mDownloadFinishReceiver, downloadIntentFilter); - // Listen for messages from the OperationsService - /* - IntentFilter operationsIntentFilter = new IntentFilter(OperationsService.ACTION_OPERATION_ADDED); - operationsIntentFilter.addAction(OperationsService.ACTION_OPERATION_FINISHED); - mOperationsServiceReceiver = new OperationsServiceReceiver(); - LocalBroadcastManager.getInstance(this).registerReceiver(mOperationsServiceReceiver, operationsIntentFilter); - */ - Log_OC.d(TAG, "onResume() end"); } @@ -730,12 +709,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { unregisterReceiver(mDownloadFinishReceiver); mDownloadFinishReceiver = null; } - /* - if (mOperationsServiceReceiver != null) { - LocalBroadcastManager.getInstance(this).unregisterReceiver(mOperationsServiceReceiver); - mOperationsServiceReceiver = null; - } - */ Log_OC.d(TAG, "onPause() end"); } @@ -934,32 +907,17 @@ OnSslUntrustedCertListener, EditNameDialogListener { currentFile = currentDir; } - /* TODO WIP COMMENT if (synchFolderRemotePath != null && currentDir.getRemotePath().equals(synchFolderRemotePath)) { OCFileListFragment fileListFragment = getListOfFilesFragment(); if (fileListFragment != null) { fileListFragment.listDirectory(currentDir); } } - */ setFile(currentFile); } mSyncInProgress = (!FileSyncAdapter.EVENT_FULL_SYNC_END.equals(event) && !SynchronizeFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED.equals(event)); - /* - if (synchResult != null && - synchResult.isSuccess() && - (SynchronizeFolderOperation.EVENT_SINGLE_FOLDER_SYNCED.equals(event) || - FileSyncAdapter.EVENT_FULL_SYNC_FOLDER_CONTENTS_SYNCED.equals(event) - ) && - !mRefreshSharesInProgress && - getFileOperationsHelper().isSharedSupported(FileDisplayActivity.this) - ) { - startGetShares(); - } - */ - } removeStickyBroadcast(intent); Log_OC.d(TAG, "Setting progress visibility to " + mSyncInProgress); @@ -999,9 +957,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { (uploadedRemotePath.startsWith(currentDir.getRemotePath())); if (sameAccount && isDescendant) { - /* - refeshListOfFilesFragment(); - */ + refreshListOfFilesFragment(); } boolean uploadWasFine = intent.getBooleanExtra(FileUploader.EXTRA_UPLOAD_RESULT, false); @@ -1027,7 +983,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())) { @@ -1056,9 +1016,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { boolean isDescendant = isDescendant(downloadedRemotePath); if (sameAccount && isDescendant) { - /* TODO WIP COMMENT - refeshListOfFilesFragment(); - */ + refreshListOfFilesFragment(); refreshSecondFragment(intent.getAction(), downloadedRemotePath, intent.getBooleanExtra(FileDownloader.EXTRA_DOWNLOAD_RESULT, false)); } @@ -1070,6 +1028,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { } removeStickyBroadcast(intent); + mWaitingToPreview = null; } private boolean isDescendant(String downloadedRemotePath) { @@ -1084,46 +1043,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { } - /** - * Class waiting for broadcast events from the {@link OperationsService}. - * - * Updates the list of files when a get for shares is finished; at this moment the refresh of shares is the only - * operation performed in {@link OperationsService}. - * - * In the future will handle the progress or finalization of all the operations performed in {@link OperationsService}, - * probably all the operations associated to the app model. - */ - private class OperationsServiceReceiver extends BroadcastReceiver { - - @Override - public void onReceive(Context context, Intent intent) { - if (OperationsService.ACTION_OPERATION_ADDED.equals(intent.getAction())) { - - } else if (OperationsService.ACTION_OPERATION_FINISHED.equals(intent.getAction())) { - //mRefreshSharesInProgress = false; - - Account account = intent.getParcelableExtra(OperationsService.EXTRA_ACCOUNT); - RemoteOperationResult getSharesResult = (RemoteOperationResult)intent.getSerializableExtra(OperationsService.EXTRA_RESULT); - if (getAccount() != null && account.name.equals(getAccount().name) - && getStorageManager() != null - ) { - /* - refeshListOfFilesFragment(); - */ - } - if ((getSharesResult != null) && - RemoteOperationResult.ResultCode.SSL_RECOVERABLE_PEER_UNVERIFIED.equals(getSharesResult.getCode())) { - mLastSslUntrustedServerResult = getSharesResult; - showUntrustedCertDialog(mLastSslUntrustedServerResult); - } - - //setSupportProgressBarIndeterminateVisibility(mRefreshSharesInProgress || mSyncInProgress); - } - - } - - } - public void browseToRoot() { OCFileListFragment listOfFiles = getListOfFilesFragment(); if (listOfFiles != null) { // should never be null, indeed @@ -1213,19 +1132,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { } - /** - * {@inheritDoc} - */ - - @Override - public void onFileStateChanged() { - /* TODO WIP COMMENT - refeshListOfFilesFragment(); - updateNavigationElementsInActionBar(getSecondFragment().getFile()); - */ - } - - @Override protected ServiceConnection newTransferenceServiceConnection() { return new ListServiceConnection(); @@ -1344,9 +1250,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { private void onCreateShareOperationFinish(CreateShareOperation operation, RemoteOperationResult result) { if (result.isSuccess()) { refreshShowDetails(); - /* TODO WIP COMMENT - refeshListOfFilesFragment(); - */ + refreshListOfFilesFragment(); } } @@ -1354,14 +1258,11 @@ OnSslUntrustedCertListener, EditNameDialogListener { private void onUnshareLinkOperationFinish(UnshareLinkOperation operation, RemoteOperationResult result) { if (result.isSuccess()) { refreshShowDetails(); - /* - refeshListOfFilesFragment(); - */ + refreshListOfFilesFragment(); + } else if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { cleanSecondFragment(); - /* - refeshListOfFilesFragment(); - */ + refreshListOfFilesFragment(); } } @@ -1397,12 +1298,13 @@ OnSslUntrustedCertListener, EditNameDialogListener { OCFile removedFile = operation.getFile(); FileFragment second = getSecondFragment(); if (second != null && removedFile.equals(second.getFile())) { + if (second instanceof PreviewMediaFragment) { + ((PreviewMediaFragment)second).stopPreview(true); + } cleanSecondFragment(); } if (getStorageManager().getFileById(removedFile.getParentId()).equals(getCurrentDir())) { - /* - refeshListOfFilesFragment(); - */ + refreshListOfFilesFragment(); } } else { @@ -1425,10 +1327,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { private void onCreateFolderOperationFinish(CreateFolderOperation operation, RemoteOperationResult result) { if (result.isSuccess()) { dismissLoadingDialog(); - /* TODO WIP COMMENT - refeshListOfFilesFragment(); - */ - + refreshListOfFilesFragment(); } else { dismissLoadingDialog(); if (result.getCode() == ResultCode.INVALID_CHARACTER_IN_NAME) { @@ -1460,11 +1359,11 @@ OnSslUntrustedCertListener, EditNameDialogListener { FileFragment details = getSecondFragment(); if (details != null && details instanceof FileDetailFragment && renamedFile.equals(details.getFile()) ) { ((FileDetailFragment) details).updateFileDetails(renamedFile, getAccount()); + showDetails(renamedFile); } + if (getStorageManager().getFileById(renamedFile.getParentId()).equals(getCurrentDir())) { - /* - refeshListOfFilesFragment(); - */ + refreshListOfFilesFragment(); } } else { @@ -1500,9 +1399,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { } else { if (operation.transferWasRequested()) { - /* - refeshListOfFilesFragment(); - */ onTransferStateChanged(syncedFile, true, true); } else { @@ -1538,14 +1434,7 @@ OnSslUntrustedCertListener, EditNameDialogListener { // Create directory path += newDirectoryName + OCFile.PATH_SEPARATOR; - RemoteOperation operation = new CreateFolderOperation(path, false, getStorageManager()); - operation.execute( getAccount(), - FileDisplayActivity.this, - FileDisplayActivity.this, - getHandler(), - FileDisplayActivity.this); - - showLoadingDialog(); + getFileOperationsHelper().createFolder(path, false); } } } @@ -1594,17 +1483,6 @@ OnSslUntrustedCertListener, EditNameDialogListener { setSupportProgressBarIndeterminateVisibility(true); } - /* - private void startGetShares() { - // Get shared files/folders - Intent intent = new Intent(this, OperationsService.class); - intent.putExtra(OperationsService.EXTRA_ACCOUNT, getAccount()); - startService(intent); - - mRefreshSharesInProgress = true; - } - */ - /** * Show untrusted cert dialog */ @@ -1695,10 +1573,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();