From: masensio Date: Fri, 7 Feb 2014 12:25:53 +0000 (+0100) Subject: OC-2868: Fix bug: Unshare a file that does not exist any more, no message is shown X-Git-Tag: oc-android-1.5.5~48^2~22 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/7cf9c82cc0b62eaa6c4effb634c3aa36a6c043f2?hp=--cc OC-2868: Fix bug: Unshare a file that does not exist any more, no message is shown --- 7cf9c82cc0b62eaa6c4effb634c3aa36a6c043f2 diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index 67285311..e4c853e8 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -1350,9 +1350,12 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa private void onUnshareLinkOperationFinish(UnshareLinkOperation operation, RemoteOperationResult result) { - if (result.isSuccess() || result.getCode() == ResultCode.SHARE_NOT_FOUND) { + if (result.isSuccess()) { refreshShowDetails(); refeshListOfFilesFragment(); + } else if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { + cleanSecondFragment(); + refeshListOfFilesFragment(); } } @@ -1364,12 +1367,12 @@ OCFileListFragment.ContainerActivity, FileDetailFragment.ContainerActivity, OnNa file = getStorageManager().getFileByPath(file.getRemotePath()); { if (!(details instanceof PreviewMediaFragment || details instanceof PreviewImageFragment)) { showDetails(file); - } else if (details instanceof PreviewMediaFragment) { + } else if (details instanceof PreviewMediaFragment) { startMediaPreview(file, 0, false); } } invalidateOptionsMenu(); - } + } } } diff --git a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java index 8ef5fc23..e0b10717 100644 --- a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java +++ b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java @@ -48,7 +48,9 @@ import com.owncloud.android.files.services.FileUploader.FileUploaderBinder; 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.RemoteOperationResult.ResultCode; import com.owncloud.android.operations.CreateShareOperation; +import com.owncloud.android.operations.UnshareLinkOperation; import com.owncloud.android.ui.activity.FileActivity; import com.owncloud.android.ui.activity.FileDisplayActivity; import com.owncloud.android.ui.activity.PinCodeActivity; @@ -158,9 +160,26 @@ public class PreviewImageActivity extends FileActivity implements FileFragment.C if (operation instanceof CreateShareOperation) { onCreateShareOperationFinish((CreateShareOperation) operation, result); + } else if (operation instanceof UnshareLinkOperation) { + onUnshareLinkOperationFinish((UnshareLinkOperation) operation, result); + } } + + private void onUnshareLinkOperationFinish(UnshareLinkOperation operation, RemoteOperationResult result) { + if (result.isSuccess()) { + OCFile file = getStorageManager().getFileByPath(getFile().getRemotePath()); + if (file != null) { + setFile(file); + invalidateOptionsMenu(); + } + } else if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { + backToDisplayActivity(); + } + + } + private void onCreateShareOperationFinish(CreateShareOperation operation, RemoteOperationResult result) { if (result.isSuccess()) { OCFile file = getStorageManager().getFileByPath(getFile().getRemotePath());