From 52efd8cea0f9291e20912ca72ecf13c9fe72414e Mon Sep 17 00:00:00 2001 From: tobiasKaminsky Date: Tue, 12 Jun 2018 10:03:09 +0200 Subject: [PATCH 01/10] add sharing to email Signed-off-by: tobiasKaminsky --- .../android/operations/CreateShareWithShareeOperation.java | 2 +- .../android/providers/UsersAndGroupsSearchProvider.java | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/owncloud/android/operations/CreateShareWithShareeOperation.java b/src/main/java/com/owncloud/android/operations/CreateShareWithShareeOperation.java index 79a6f73b0c45..c054601f390f 100644 --- a/src/main/java/com/owncloud/android/operations/CreateShareWithShareeOperation.java +++ b/src/main/java/com/owncloud/android/operations/CreateShareWithShareeOperation.java @@ -55,7 +55,7 @@ public class CreateShareWithShareeOperation extends SyncOperation { */ public CreateShareWithShareeOperation(String path, String shareeName, ShareType shareType, int permissions) { if (!ShareType.USER.equals(shareType) && !ShareType.GROUP.equals(shareType) - && !ShareType.FEDERATED.equals(shareType)) { + && !ShareType.FEDERATED.equals(shareType) && !ShareType.EMAIL.equals(shareType)) { throw new IllegalArgumentException("Illegal share type " + shareType); } mPath = path; diff --git a/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java b/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java index 586a11e451a9..638177a7f512 100644 --- a/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java +++ b/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java @@ -110,6 +110,7 @@ public boolean onCreate() { sShareTypes.put(DATA_USER, ShareType.USER); sShareTypes.put(DATA_GROUP, ShareType.GROUP); sShareTypes.put(DATA_REMOTE, ShareType.FEDERATED); + sShareTypes.put(DATA_REMOTE, ShareType.EMAIL); mUriMatcher = new UriMatcher(UriMatcher.NO_MATCH); mUriMatcher.addURI(AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY + "/*", SEARCH); @@ -215,6 +216,9 @@ private Cursor searchForUsersOrGroups(Uri uri) { displayName = userName; icon = R.drawable.ic_user; dataUri = Uri.withAppendedPath(userBaseUri, shareWith); + } else if (ShareType.EMAIL.getValue() == type) { + icon = R.drawable.ic_user; + displayName = getContext().getString(R.string.share_email_clarification, userName); } if (displayName != null && dataUri != null) { From 7e2721b03c47db780c56fa2fbeaf1b68d1edd1a0 Mon Sep 17 00:00:00 2001 From: tobiasKaminsky Date: Tue, 12 Jun 2018 10:12:13 +0200 Subject: [PATCH 02/10] user lib branch Signed-off-by: tobiasKaminsky # Conflicts: # build.gradle --- build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 22c1f3398245..fbfc1a60b0db 100644 --- a/build.gradle +++ b/build.gradle @@ -206,9 +206,9 @@ dependencies { // dependencies for app building implementation 'com.android.support:multidex:1.0.3' // implementation project('nextcloud-android-library') - genericImplementation "com.github.nextcloud:android-library:1.0.42" - gplayImplementation "com.github.nextcloud:android-library:1.0.42" - versionDevImplementation 'com.github.nextcloud:android-library:master-SNAPSHOT' // use always latest master + genericImplementation "com.github.nextcloud:android-library:emailShare-SNAPSHOT" + gplayImplementation "com.github.nextcloud:android-library:emailShare-SNAPSHOT" + versionDevImplementation 'com.github.nextcloud:android-library:emailShare-SNAPSHOT' // use always latest master implementation "com.android.support:support-v4:${supportLibraryVersion}" implementation "com.android.support:design:${supportLibraryVersion}" implementation 'com.jakewharton:disklrucache:2.0.2' From 10e0f2c3a7b5ba11bafd20085c804803ff7056dd Mon Sep 17 00:00:00 2001 From: AndyScherzinger Date: Tue, 12 Jun 2018 11:11:00 +0200 Subject: [PATCH 03/10] codacy: organize imports # Conflicts: # src/main/java/com/owncloud/android/ui/fragment/util/SharingMenuHelper.java --- .../ui/fragment/util/FileDetailSharingFragmentHelper.java | 7 ------- .../owncloud/android/ui/helpers/FileOperationsHelper.java | 1 - 2 files changed, 8 deletions(-) diff --git a/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java b/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java index d01a1a906274..390635762c16 100644 --- a/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java +++ b/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java @@ -22,18 +22,11 @@ import android.app.SearchManager; import android.content.ComponentName; -import android.content.res.Resources; import android.support.v7.widget.SearchView; -import android.view.MenuItem; import android.view.inputmethod.EditorInfo; -import com.owncloud.android.R; -import com.owncloud.android.lib.resources.shares.OCShare; import com.owncloud.android.lib.resources.status.OCCapability; -import java.text.SimpleDateFormat; -import java.util.Date; - /** * Helper calls for visibility logic of the sharing fragment. */ diff --git a/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java b/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java index a28671ba905f..ee35e6514e88 100755 --- a/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java +++ b/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java @@ -33,7 +33,6 @@ import android.net.Uri; import android.os.Build; import android.support.annotation.Nullable; -import android.support.design.widget.Snackbar; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.support.v4.content.FileProvider; From 94b0410ef9a966f1e2511ce35c1736e4c4f635d8 Mon Sep 17 00:00:00 2001 From: AndyScherzinger Date: Tue, 12 Jun 2018 11:15:27 +0200 Subject: [PATCH 04/10] simplify if-clauses --- .../ui/helpers/FileOperationsHelper.java | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java b/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java index ee35e6514e88..8f6f9c12655f 100755 --- a/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java +++ b/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java @@ -91,7 +91,7 @@ public class FileOperationsHelper { private static final String TAG = FileOperationsHelper.class.getSimpleName(); private static final Pattern mPatternUrl = Pattern.compile("^URL=(.+)$"); private static final Pattern mPatternString = Pattern.compile("(.+)"); - private FileActivity mFileActivity = null; + private FileActivity mFileActivity; /// Identifier of operation in progress which result shouldn't be lost private long mWaitingForOpId = Long.MAX_VALUE; @@ -427,10 +427,8 @@ public void shareFileWithSharee(OCFile file, String shareeName, ShareType shareT * @return 'True' if the server supports the Share API */ public boolean isSharedSupported() { - if (mFileActivity.getAccount() != null) { - return AccountUtils.getServerVersion(mFileActivity.getAccount()).isSharedSupported(); - } - return false; + return mFileActivity.getAccount() != null && + AccountUtils.getServerVersion(mFileActivity.getAccount()).isSharedSupported(); } @@ -470,8 +468,7 @@ public void unshareFileWithUserOrGroup(OCFile file, ShareType shareType, String private void queueShareIntent(Intent shareIntent) { if (isSharedSupported()) { // Unshare the file - mWaitingForOpId = mFileActivity.getOperationsServiceBinder(). - queueNewOperation(shareIntent); + mWaitingForOpId = mFileActivity.getOperationsServiceBinder().queueNewOperation(shareIntent); mFileActivity.showLoadingDialog(mFileActivity.getApplicationContext(). getString(R.string.wait_a_moment)); @@ -918,10 +915,8 @@ public void setOpIdWaitingFor(long waitingForOpId) { * @return 'True' if the server doesn't need to check forbidden characters */ public boolean isVersionWithForbiddenCharacters() { - if (mFileActivity.getAccount() != null) { - return AccountUtils.getServerVersion(mFileActivity.getAccount()).isVersionWithForbiddenCharacters(); - } - return false; + return mFileActivity.getAccount() != null && + AccountUtils.getServerVersion(mFileActivity.getAccount()).isVersionWithForbiddenCharacters(); } /** From 8417b3df3c22330e1e397a7a98d33f008e1303c3 Mon Sep 17 00:00:00 2001 From: AndyScherzinger Date: Tue, 12 Jun 2018 11:23:22 +0200 Subject: [PATCH 05/10] display email icon for email addresses in the suggestions for share searches --- .../android/providers/UsersAndGroupsSearchProvider.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java b/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java index 638177a7f512..38d8e6e11665 100644 --- a/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java +++ b/src/main/java/com/owncloud/android/providers/UsersAndGroupsSearchProvider.java @@ -217,7 +217,7 @@ private Cursor searchForUsersOrGroups(Uri uri) { icon = R.drawable.ic_user; dataUri = Uri.withAppendedPath(userBaseUri, shareWith); } else if (ShareType.EMAIL.getValue() == type) { - icon = R.drawable.ic_user; + icon = R.drawable.ic_email; displayName = getContext().getString(R.string.share_email_clarification, userName); } From 552c6ec814aa1a636c621e2faeed5d0f23f8bfe6 Mon Sep 17 00:00:00 2001 From: AndyScherzinger Date: Tue, 12 Jun 2018 11:49:23 +0200 Subject: [PATCH 06/10] adjust javaDoc --- src/main/java/com/owncloud/android/utils/ThemeUtils.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/owncloud/android/utils/ThemeUtils.java b/src/main/java/com/owncloud/android/utils/ThemeUtils.java index c69dcd6308c6..a9144a54c9c1 100644 --- a/src/main/java/com/owncloud/android/utils/ThemeUtils.java +++ b/src/main/java/com/owncloud/android/utils/ThemeUtils.java @@ -223,7 +223,7 @@ public static void setStatusBarColor(Activity activity, @ColorInt int color) { * Adjust lightness of given color * * @param lightnessDelta values -1..+1 - * @param color + * @param color original color * @param threshold 0..1 as maximum value, -1 to disable * @return color adjusted by lightness */ @@ -360,15 +360,16 @@ public static Drawable tintDrawable(@DrawableRes int id, int color) { return tintDrawable(drawable, color); } + @Nullable public static Drawable tintDrawable(Drawable drawable, int color) { if (drawable != null) { Drawable wrap = DrawableCompat.wrap(drawable); wrap.setColorFilter(color, PorterDuff.Mode.SRC_ATOP); return wrap; - } else { - return drawable; } + + return null; } public static String colorToHexString(int color) { From 3c337734a4ea15d625f56dbfe567f39d5b7ee09f Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Thu, 14 Jun 2018 23:34:17 +0200 Subject: [PATCH 07/10] revert back to master lib --- build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index fbfc1a60b0db..3443ecc6b66a 100644 --- a/build.gradle +++ b/build.gradle @@ -206,9 +206,9 @@ dependencies { // dependencies for app building implementation 'com.android.support:multidex:1.0.3' // implementation project('nextcloud-android-library') - genericImplementation "com.github.nextcloud:android-library:emailShare-SNAPSHOT" - gplayImplementation "com.github.nextcloud:android-library:emailShare-SNAPSHOT" - versionDevImplementation 'com.github.nextcloud:android-library:emailShare-SNAPSHOT' // use always latest master + genericImplementation "com.github.nextcloud:android-library:master-SNAPSHOT" + gplayImplementation "com.github.nextcloud:android-library:master-SNAPSHOT" + versionDevImplementation 'com.github.nextcloud:android-library:master-SNAPSHOT' // use always latest master implementation "com.android.support:support-v4:${supportLibraryVersion}" implementation "com.android.support:design:${supportLibraryVersion}" implementation 'com.jakewharton:disklrucache:2.0.2' From 161a52bbf2c8143f98af6c1027c234e019c85609 Mon Sep 17 00:00:00 2001 From: AndyScherzinger Date: Mon, 18 Jun 2018 18:39:31 +0200 Subject: [PATCH 08/10] use fixed lib release: 1.0.43 --- build.gradle | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/build.gradle b/build.gradle index 3443ecc6b66a..9345524e38c7 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:3.1.2' + classpath 'com.android.tools.build:gradle:3.1.3' classpath 'com.google.gms:google-services:3.0.0' classpath 'org.codehaus.groovy:groovy-all:2.4.12' classpath('com.dicedmelon.gradle:jacoco-android:0.1.2') { @@ -206,9 +206,9 @@ dependencies { // dependencies for app building implementation 'com.android.support:multidex:1.0.3' // implementation project('nextcloud-android-library') - genericImplementation "com.github.nextcloud:android-library:master-SNAPSHOT" - gplayImplementation "com.github.nextcloud:android-library:master-SNAPSHOT" - versionDevImplementation 'com.github.nextcloud:android-library:master-SNAPSHOT' // use always latest master + genericImplementation "com.github.nextcloud:android-library:1.0.43" + gplayImplementation "com.github.nextcloud:android-library:1.0.43" + versionDevImplementation 'com.github.nextcloud:android-library:1.0.43' // use always latest master implementation "com.android.support:support-v4:${supportLibraryVersion}" implementation "com.android.support:design:${supportLibraryVersion}" implementation 'com.jakewharton:disklrucache:2.0.2' From 3b7ca9e7d0423d6f2c20770811171ac2d193e028 Mon Sep 17 00:00:00 2001 From: AndyScherzinger Date: Mon, 18 Jun 2018 18:54:17 +0200 Subject: [PATCH 09/10] fix java imports after cherry pick for backport --- .../ui/fragment/util/FileDetailSharingFragmentHelper.java | 7 +++++++ .../owncloud/android/ui/helpers/FileOperationsHelper.java | 1 + src/main/java/com/owncloud/android/utils/ThemeUtils.java | 1 + 3 files changed, 9 insertions(+) diff --git a/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java b/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java index 390635762c16..d01a1a906274 100644 --- a/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java +++ b/src/main/java/com/owncloud/android/ui/fragment/util/FileDetailSharingFragmentHelper.java @@ -22,11 +22,18 @@ import android.app.SearchManager; import android.content.ComponentName; +import android.content.res.Resources; import android.support.v7.widget.SearchView; +import android.view.MenuItem; import android.view.inputmethod.EditorInfo; +import com.owncloud.android.R; +import com.owncloud.android.lib.resources.shares.OCShare; import com.owncloud.android.lib.resources.status.OCCapability; +import java.text.SimpleDateFormat; +import java.util.Date; + /** * Helper calls for visibility logic of the sharing fragment. */ diff --git a/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java b/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java index 8f6f9c12655f..4e879b18cb88 100755 --- a/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java +++ b/src/main/java/com/owncloud/android/ui/helpers/FileOperationsHelper.java @@ -33,6 +33,7 @@ import android.net.Uri; import android.os.Build; import android.support.annotation.Nullable; +import android.support.design.widget.Snackbar; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.support.v4.content.FileProvider; diff --git a/src/main/java/com/owncloud/android/utils/ThemeUtils.java b/src/main/java/com/owncloud/android/utils/ThemeUtils.java index a9144a54c9c1..54328d3821d8 100644 --- a/src/main/java/com/owncloud/android/utils/ThemeUtils.java +++ b/src/main/java/com/owncloud/android/utils/ThemeUtils.java @@ -32,6 +32,7 @@ import android.os.Build; import android.support.annotation.ColorInt; import android.support.annotation.DrawableRes; +import android.support.annotation.Nullable; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v4.app.FragmentActivity; From 4b4591a5cf00eaab9c1daa8958749e72eb438f7f Mon Sep 17 00:00:00 2001 From: nextcloud-android-bot <> Date: Tue, 19 Jun 2018 08:51:45 +0000 Subject: [PATCH 10/10] Drone: update Lint results to reflect reduced error/warning count [skip ci] --- scripts/lint/lint-results.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/lint/lint-results.txt b/scripts/lint/lint-results.txt index f5ae9a19d82f..1ea0e0da8cfe 100644 --- a/scripts/lint/lint-results.txt +++ b/scripts/lint/lint-results.txt @@ -1,2 +1,2 @@ DO NOT TOUCH; GENERATED BY DRONE - Lint Report: 101 warnings + Lint Report: 100 warnings