From: masensio Date: Thu, 12 Nov 2015 17:02:47 +0000 (+0100) Subject: Delete any rest of old public share/unshare flow X-Git-Tag: oc-android-1.9^2~10^2~9 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/e08513a762be4478e438517d4e104364e223f1a1?ds=inline;hp=--cc Delete any rest of old public share/unshare flow --- e08513a762be4478e438517d4e104364e223f1a1 diff --git a/res/menu/file_actions_menu.xml b/res/menu/file_actions_menu.xml index 586ec4a2..32134d34 100644 --- a/res/menu/file_actions_menu.xml +++ b/res/menu/file_actions_menu.xml @@ -20,18 +20,9 @@ - - Synchronize File was renamed to %1$s during upload List Layout - Share link - Unshare link - Share with users + Share Yes No OK diff --git a/src/com/owncloud/android/datamodel/FileDataStorageManager.java b/src/com/owncloud/android/datamodel/FileDataStorageManager.java index 0588ad9d..5b5daa72 100644 --- a/src/com/owncloud/android/datamodel/FileDataStorageManager.java +++ b/src/com/owncloud/android/datamodel/FileDataStorageManager.java @@ -20,16 +20,6 @@ package com.owncloud.android.datamodel; -import java.io.File; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.HashSet; -import java.util.Iterator; -import java.util.List; -import java.util.Set; -import java.util.Vector; - import android.accounts.Account; import android.content.ContentProviderClient; import android.content.ContentProviderOperation; @@ -53,11 +43,20 @@ import com.owncloud.android.lib.resources.status.CapabilityBooleanType; import com.owncloud.android.lib.resources.status.OCCapability; import com.owncloud.android.utils.FileStorageUtils; +import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Collections; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Set; +import java.util.Vector; public class FileDataStorageManager { @@ -998,7 +997,7 @@ public class FileDataStorageManager { + ProviderTableMeta.OCSHARES_SHARE_TYPE + "=? AND " + ProviderTableMeta.OCSHARES_ACCOUNT_OWNER + "=?" ; if (!ShareType.PUBLIC_LINK.equals(type)) { - selection += ProviderTableMeta.OCSHARES_SHARE_WITH + "=? AND "; + selection += " AND " + ProviderTableMeta.OCSHARES_SHARE_WITH + "=?"; } String [] selectionArgs; diff --git a/src/com/owncloud/android/files/FileMenuFilter.java b/src/com/owncloud/android/files/FileMenuFilter.java index 25d3027a..c8951096 100644 --- a/src/com/owncloud/android/files/FileMenuFilter.java +++ b/src/com/owncloud/android/files/FileMenuFilter.java @@ -187,31 +187,17 @@ public class FileMenuFilter { // TODO add check on SHARE available on server side? boolean shareAllowed = (mContext != null && mContext.getString(R.string.share_feature).equalsIgnoreCase("on")); - if (!shareAllowed || mFile == null) { - toHide.add(R.id.action_share_file); - } else { - toShow.add(R.id.action_share_file); - } - - // UNSHARE FILE - // TODO add check on SHARE available on server side? - if ( !shareAllowed || (mFile == null || !mFile.isSharedViaLink())) { - toHide.add(R.id.action_unshare_file); - } else { - toShow.add(R.id.action_unshare_file); - } // SHARE FILE, with Users OCCapability capability = mComponentsGetter.getStorageManager().getCapability(mAccount.name); boolean shareApiEnabled = capability != null && (capability.getFilesSharingApiEnabled().isTrue() || capability.getFilesSharingApiEnabled().isUnknown()); if (!shareAllowed || mFile == null || !shareApiEnabled ) { - toHide.add(R.id.action_share_with_users); + toHide.add(R.id.action_share_file); } else { - toShow.add(R.id.action_share_with_users); + toShow.add(R.id.action_share_file); } - // SEE DETAILS if (mFile == null || mFile.isFolder()) { toHide.add(R.id.action_see_details); diff --git a/src/com/owncloud/android/files/FileOperationsHelper.java b/src/com/owncloud/android/files/FileOperationsHelper.java index 2f0e16ca..0e44794c 100644 --- a/src/com/owncloud/android/files/FileOperationsHelper.java +++ b/src/com/owncloud/android/files/FileOperationsHelper.java @@ -48,7 +48,6 @@ import com.owncloud.android.ui.activity.ShareActivity; import com.owncloud.android.ui.dialog.ShareLinkToDialog; import com.owncloud.android.ui.dialog.SharePasswordDialogFragment; -import org.apache.http.protocol.HTTP; import java.util.List; @@ -187,33 +186,8 @@ public class FileOperationsHelper { mWaitingForOpId = mFileActivity.getOperationsServiceBinder().queueNewOperation(service); } else { - Log_OC.wtf(TAG, "Trying to open a NULL OCFile"); - } - } else { - // Show a Message - Toast t = Toast.makeText( - mFileActivity, mFileActivity.getString(R.string.share_link_no_support_share_api), - Toast.LENGTH_LONG - ); - t.show(); - } - } - - public void shareFileWithLinkOLD(OCFile file) { - - if (isSharedSupported()) { - if (file != null) { - String link = "https://fake.url"; - Intent intent = createShareWithLinkIntent(link); - String[] packagesToExclude = new String[]{mFileActivity.getPackageName()}; - DialogFragment chooserDialog = ShareLinkToDialog.newInstance(intent, - packagesToExclude, file); - chooserDialog.show(mFileActivity.getSupportFragmentManager(), FTAG_CHOOSER_DIALOG); - - } else { Log_OC.wtf(TAG, "Trying to share a NULL OCFile"); } - } else { // Show a Message Toast t = Toast.makeText( @@ -224,7 +198,6 @@ public class FileOperationsHelper { } } - public void shareFileWithLinkToApp(OCFile file, String password, Intent sendIntent) { if (file != null) { @@ -244,15 +217,6 @@ public class FileOperationsHelper { } } - - private Intent createShareWithLinkIntent(String link) { - Intent intentToShareLink = new Intent(Intent.ACTION_SEND); - intentToShareLink.putExtra(Intent.EXTRA_TEXT, link); - intentToShareLink.setType(HTTP.PLAIN_TEXT_TYPE); - return intentToShareLink; - } - - /** * Helper method to share a file with a known sharee. Starts a request to do it in {@link OperationsService} * diff --git a/src/com/owncloud/android/operations/CreateShareViaLinkOperation.java b/src/com/owncloud/android/operations/CreateShareViaLinkOperation.java index 52baa417..83ec1b64 100644 --- a/src/com/owncloud/android/operations/CreateShareViaLinkOperation.java +++ b/src/com/owncloud/android/operations/CreateShareViaLinkOperation.java @@ -41,6 +41,8 @@ import com.owncloud.android.lib.resources.shares.OCShare; import com.owncloud.android.lib.resources.shares.ShareType; import com.owncloud.android.operations.common.SyncOperation; +import java.util.ArrayList; + public class CreateShareViaLinkOperation extends SyncOperation { private String mPath; @@ -73,9 +75,20 @@ public class CreateShareViaLinkOperation extends SyncOperation { // Check if the share link already exists RemoteOperation operation = new GetRemoteSharesForFileOperation(mPath, false, false); RemoteOperationResult result = operation.execute(client); - // TODO - fix this check; if the user already shared the file with users or group, a share via link will not be created - if (!result.isSuccess() || result.getData().size() <= 0) { + boolean shareByLink = false; + // Check if the file is shared by link + if (result.isSuccess() && result.getData().size() > 0){ + ArrayList shares = result.getData(); + for(Object object: shares){ + if (((OCShare) object).getShareType() == ShareType.PUBLIC_LINK){ + shareByLink = true; + break; + } + } + } + + if (!result.isSuccess() || !shareByLink) { operation = new CreateRemoteShareOperation( mPath, ShareType.PUBLIC_LINK, diff --git a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java index e814c2d3..f09ed6c7 100644 --- a/src/com/owncloud/android/ui/activity/FileDisplayActivity.java +++ b/src/com/owncloud/android/ui/activity/FileDisplayActivity.java @@ -26,7 +26,6 @@ import android.accounts.Account; import android.accounts.AccountManager; import android.accounts.AuthenticatorException; import android.annotation.TargetApi; -import android.support.v7.app.AlertDialog; import android.content.BroadcastReceiver; import android.content.ComponentName; import android.content.ContentResolver; @@ -50,6 +49,7 @@ import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.support.v4.content.ContextCompat; import android.support.v4.view.GravityCompat; +import android.support.v7.app.AlertDialog; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; @@ -79,14 +79,11 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCo import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.operations.CopyFileOperation; import com.owncloud.android.operations.CreateFolderOperation; -import com.owncloud.android.operations.CreateShareViaLinkOperation; -import com.owncloud.android.operations.CreateShareWithShareeOperation; import com.owncloud.android.operations.MoveFileOperation; import com.owncloud.android.operations.RefreshFolderOperation; import com.owncloud.android.operations.RemoveFileOperation; import com.owncloud.android.operations.RenameFileOperation; import com.owncloud.android.operations.SynchronizeFileOperation; -import com.owncloud.android.operations.UnshareOperation; import com.owncloud.android.services.observer.FileObserverService; import com.owncloud.android.syncadapter.FileSyncAdapter; import com.owncloud.android.ui.dialog.ConfirmationDialogFragment; @@ -1353,15 +1350,6 @@ public class FileDisplayActivity extends HookActivity } else if (operation instanceof CreateFolderOperation) { onCreateFolderOperationFinish((CreateFolderOperation) operation, result); - } else if (operation instanceof CreateShareViaLinkOperation || - operation instanceof CreateShareWithShareeOperation ) { - - refreshShowDetails(); - refreshListOfFilesFragment(); - - } else if (operation instanceof UnshareOperation) { - onUnshareLinkOperationFinish((UnshareOperation) operation, result); - } else if (operation instanceof MoveFileOperation) { onMoveFileOperationFinish((MoveFileOperation) operation, result); @@ -1371,18 +1359,6 @@ public class FileDisplayActivity extends HookActivity } - private void onUnshareLinkOperationFinish(UnshareOperation operation, - RemoteOperationResult result) { - if (result.isSuccess()) { - refreshShowDetails(); - refreshListOfFilesFragment(); - - } else if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { - cleanSecondFragment(); - refreshListOfFilesFragment(); - } - } - private void refreshShowDetails() { FileFragment details = getSecondFragment(); if (details != null) { diff --git a/src/com/owncloud/android/ui/dialog/ShareLinkToDialog.java b/src/com/owncloud/android/ui/dialog/ShareLinkToDialog.java index dad573e1..b4c08e31 100644 --- a/src/com/owncloud/android/ui/dialog/ShareLinkToDialog.java +++ b/src/com/owncloud/android/ui/dialog/ShareLinkToDialog.java @@ -46,7 +46,6 @@ import android.widget.TextView; import com.owncloud.android.R; import com.owncloud.android.datamodel.OCFile; import com.owncloud.android.lib.common.utils.Log_OC; -import com.owncloud.android.ui.activity.ComponentsGetter; import com.owncloud.android.ui.activity.CopyToClipboardActivity; import com.owncloud.android.ui.activity.FileActivity; @@ -142,24 +141,13 @@ public class ShareLinkToDialog extends DialogFragment { ComponentName name=new ComponentName( actInfo.applicationInfo.packageName, actInfo.name); - mIntent.setComponent(name); + mIntent.setComponent(name); - if (sendAction) { - dialog.dismiss(); // explicitly added for Android 2.x devices + // Send the intent + dialog.dismiss(); // explicitly added for Android 2.x devices - // Send the file - ((FileActivity)getActivity()).startActivity(mIntent); - - } else { -// // Create a new share resource -// ((ComponentsGetter)getActivity()).getFileOperationsHelper() -// .shareFileWithLinkToApp(mFile, "", mIntent); - // Send the intent - dialog.dismiss(); // explicitly added for Android 2.x devices - - // Send the file - ((FileActivity)getActivity()).startActivity(mIntent); - } + // Send the file + ((FileActivity)getActivity()).startActivity(mIntent); } }) .create(); diff --git a/src/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java b/src/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java index 9fbdbc49..fb6cce8c 100644 --- a/src/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java +++ b/src/com/owncloud/android/ui/dialog/SharePasswordDialogFragment.java @@ -117,9 +117,6 @@ public class SharePasswordDialogFragment extends DialogFragment ((FileActivity) getActivity()).getFileOperationsHelper(). setPasswordToShareViaLink(mFile, password); - } else { // TODO remove old flow - ((FileActivity) getActivity()).getFileOperationsHelper() - .shareFileWithLinkToApp(mFile, password, mSendIntent); } } else { diff --git a/src/com/owncloud/android/ui/fragment/FileDetailFragment.java b/src/com/owncloud/android/ui/fragment/FileDetailFragment.java index e656d5c8..5264af11 100644 --- a/src/com/owncloud/android/ui/fragment/FileDetailFragment.java +++ b/src/com/owncloud/android/ui/fragment/FileDetailFragment.java @@ -227,18 +227,9 @@ public class FileDetailFragment extends FileFragment implements OnClickListener public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_share_file: { - mContainerActivity.getFileOperationsHelper().shareFileWithLinkOLD(getFile()); - return true; - } - case R.id.action_share_with_users: { mContainerActivity.getFileOperationsHelper().showShareFile(getFile()); return true; } - case R.id.action_unshare_file: { - mContainerActivity.getFileOperationsHelper().unshareFileViaLink(getFile()); - return true; - } - case R.id.action_open_file_with: { mContainerActivity.getFileOperationsHelper().openFile(getFile()); return true; diff --git a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java index 94484fba..b47f648a 100644 --- a/src/com/owncloud/android/ui/fragment/OCFileListFragment.java +++ b/src/com/owncloud/android/ui/fragment/OCFileListFragment.java @@ -344,10 +344,6 @@ public class OCFileListFragment extends ExtendedListFragment mTargetFile = (OCFile) mAdapter.getItem(filePosition); switch (menuId) { case R.id.action_share_file: { - mContainerActivity.getFileOperationsHelper().shareFileWithLinkOLD(mTargetFile); - return true; - } - case R.id.action_share_with_users: { mContainerActivity.getFileOperationsHelper().showShareFile(mTargetFile); return true; } @@ -355,10 +351,6 @@ public class OCFileListFragment extends ExtendedListFragment mContainerActivity.getFileOperationsHelper().openFile(mTargetFile); return true; } - case R.id.action_unshare_file: { - mContainerActivity.getFileOperationsHelper().unshareFileViaLink(mTargetFile); - return true; - } case R.id.action_rename_file: { RenameFileDialogFragment dialog = RenameFileDialogFragment.newInstance(mTargetFile); dialog.show(getFragmentManager(), FileDetailFragment.FTAG_RENAME_FILE); diff --git a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java index 20b8de1d..25acb8cb 100644 --- a/src/com/owncloud/android/ui/preview/PreviewImageActivity.java +++ b/src/com/owncloud/android/ui/preview/PreviewImageActivity.java @@ -51,16 +51,11 @@ import com.owncloud.android.files.services.FileUploader.FileUploaderBinder; import com.owncloud.android.lib.common.operations.OnRemoteOperationListener; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; -import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode; import com.owncloud.android.lib.common.utils.Log_OC; -import com.owncloud.android.operations.CreateShareViaLinkOperation; -import com.owncloud.android.operations.CreateShareWithShareeOperation; import com.owncloud.android.operations.RemoveFileOperation; import com.owncloud.android.operations.SynchronizeFileOperation; -import com.owncloud.android.operations.UnshareOperation; import com.owncloud.android.ui.activity.FileActivity; import com.owncloud.android.ui.activity.FileDisplayActivity; -import com.owncloud.android.ui.activity.ShareActivity; import com.owncloud.android.ui.fragment.FileFragment; @@ -230,14 +225,7 @@ public class PreviewImageActivity extends FileActivity implements public void onRemoteOperationFinish(RemoteOperation operation, RemoteOperationResult result) { super.onRemoteOperationFinish(operation, result); - if (operation instanceof CreateShareViaLinkOperation || - operation instanceof CreateShareWithShareeOperation) { - onCreateShareOperationFinish(result); - - } else if (operation instanceof UnshareOperation) { - onUnshareLinkOperationFinish((UnshareOperation) operation, result); - - } else if (operation instanceof RemoveFileOperation) { + if (operation instanceof RemoveFileOperation) { finish(); } else if (operation instanceof SynchronizeFileOperation) { onSynchronizeFileOperationFinish((SynchronizeFileOperation) operation, result); @@ -245,31 +233,6 @@ public class PreviewImageActivity extends FileActivity implements } } - - private void onUnshareLinkOperationFinish(UnshareOperation 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(RemoteOperationResult result) { - if (result.isSuccess()) { - OCFile file = getStorageManager().getFileByPath(getFile().getRemotePath()); - if (file != null) { - setFile(file); - } - invalidateOptionsMenu(); - } - } - private void onSynchronizeFileOperationFinish(SynchronizeFileOperation operation, RemoteOperationResult result) { if (result.isSuccess()) { diff --git a/src/com/owncloud/android/ui/preview/PreviewImageFragment.java b/src/com/owncloud/android/ui/preview/PreviewImageFragment.java index 938c4444..df0fb7aa 100644 --- a/src/com/owncloud/android/ui/preview/PreviewImageFragment.java +++ b/src/com/owncloud/android/ui/preview/PreviewImageFragment.java @@ -286,17 +286,9 @@ public class PreviewImageFragment extends FileFragment { public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_share_file: { - mContainerActivity.getFileOperationsHelper().shareFileWithLinkOLD(getFile()); - return true; - } - case R.id.action_share_with_users: { mContainerActivity.getFileOperationsHelper().showShareFile(getFile()); return true; } - case R.id.action_unshare_file: { - mContainerActivity.getFileOperationsHelper().unshareFileViaLink(getFile()); - return true; - } case R.id.action_open_file_with: { openFile(); return true; diff --git a/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java b/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java index 53ec2bcd..ee9180d0 100644 --- a/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java +++ b/src/com/owncloud/android/ui/preview/PreviewMediaFragment.java @@ -349,19 +349,9 @@ public class PreviewMediaFragment extends FileFragment implements public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_share_file: { - stopPreview(false); - mContainerActivity.getFileOperationsHelper().shareFileWithLinkOLD(getFile()); - return true; - } - case R.id.action_share_with_users: { seeShareFile(); return true; } - case R.id.action_unshare_file: { - stopPreview(false); - mContainerActivity.getFileOperationsHelper().unshareFileViaLink(getFile()); - return true; - } case R.id.action_open_file_with: { openFile(); return true; diff --git a/src/com/owncloud/android/ui/preview/PreviewTextFragment.java b/src/com/owncloud/android/ui/preview/PreviewTextFragment.java index 1e671333..41fd6db2 100644 --- a/src/com/owncloud/android/ui/preview/PreviewTextFragment.java +++ b/src/com/owncloud/android/ui/preview/PreviewTextFragment.java @@ -299,17 +299,9 @@ public class PreviewTextFragment extends FileFragment { public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_share_file: { - mContainerActivity.getFileOperationsHelper().shareFileWithLinkOLD(getFile()); - return true; - } - case R.id.action_share_with_users: { mContainerActivity.getFileOperationsHelper().showShareFile(getFile()); return true; } - case R.id.action_unshare_file: { - mContainerActivity.getFileOperationsHelper().unshareFileViaLink(getFile()); - return true; - } case R.id.action_open_file_with: { openFile(); return true;