X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/871d5ea05d56693a5526a5a7af43b884b0cdff05..261d8a5167571ffbaa447cce8df24f32a53faf7d:/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 5a324a54..9ae9dfed 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -73,8 +73,9 @@ import com.owncloud.android.operations.CreateFolderOperation; import com.owncloud.android.lib.operations.common.OnRemoteOperationListener; import com.owncloud.android.lib.operations.common.RemoteOperation; import com.owncloud.android.lib.operations.common.RemoteOperationResult; +import com.owncloud.android.lib.operations.common.ShareType; import com.owncloud.android.lib.operations.common.RemoteOperationResult.ResultCode; - +import com.owncloud.android.operations.CreateShareOperation; import com.owncloud.android.operations.RemoveFileOperation; import com.owncloud.android.operations.RenameFileOperation; import com.owncloud.android.operations.SynchronizeFileOperation; @@ -933,13 +934,7 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa RemoteOperationResult synchResult = (RemoteOperationResult)intent.getSerializableExtra(FileSyncService.SYNC_RESULT); if (getAccount() != null && accountName.equals(getAccount().name) - && mStorageManager != null - ) { - - /// get the shared files - if (isSharedSupported()) { - startGetShares(); - } + && mStorageManager != null) { String synchFolderRemotePath = intent.getStringExtra(FileSyncService.SYNC_FOLDER_REMOTE_PATH); @@ -971,6 +966,10 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa } if (!mRefreshSharesInProgress) { + /// get the shared files + if (isSharedSupported()) { + startGetShares(); + } setSupportProgressBarIndeterminateVisibility(inProgress); } else { setSupportProgressBarIndeterminateVisibility(true); @@ -1346,10 +1345,25 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa } else if (operation instanceof CreateFolderOperation) { onCreateFolderOperationFinish((CreateFolderOperation)operation, result); + + } else if (operation instanceof CreateShareOperation) { + onCreateShareOperation((CreateShareOperation) operation, result); } + } + private void onCreateShareOperation(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(); + } + + refeshListOfFilesFragment(); + + } + /** * Updates the view associated to the activity after the finish of an operation trying to remove a * file. @@ -1569,5 +1583,24 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa setSupportProgressBarIndeterminateVisibility(true); } + + + public void shareFileWithLink(OCFile file) { + + if (isSharedSupported()) { + // Create the Share + CreateShareOperation createShare = new CreateShareOperation(file.getRemotePath(), ShareType.PUBLIC_LINK, "", false, "", 1); + createShare.execute(getStorageManager(), this, this, mHandler, this); + + // TODO + // Get the link --> when the operation is finished + + } else { + // Show a Message + Toast t = Toast.makeText(this, getString(R.string.share_link_no_support_share_api), Toast.LENGTH_LONG); + t.show(); + + } + } }