diff --git a/app/build.gradle b/app/build.gradle
index 3e820592a..ce09c0b61 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -114,7 +114,7 @@ dependencies {
exclude group: 'commons-logging', module: 'commons-logging'
}
- implementation("com.github.nextcloud:android-library:2.22.2") {
+ implementation("com.github.nextcloud:android-library:4596e80dec") {
exclude group: 'org.ogce', module: 'xpp3'
}
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/main/items/NoteViewHolder.java b/app/src/main/java/it/niedermann/owncloud/notes/main/items/NoteViewHolder.java
index f972c7bcf..5ea7c6134 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/main/items/NoteViewHolder.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/main/items/NoteViewHolder.java
@@ -20,11 +20,11 @@
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import androidx.appcompat.widget.AppCompatImageView;
import androidx.recyclerview.selection.ItemDetailsLookup;
import androidx.recyclerview.widget.RecyclerView;
import com.google.android.material.chip.Chip;
+import com.google.android.material.progressindicator.CircularProgressIndicator;
import com.nextcloud.android.common.core.utils.DateFormatter;
import com.nextcloud.android.common.ui.theme.utils.ColorRole;
@@ -66,12 +66,12 @@ protected void bindModified(@NonNull TextView noteModified, @Nullable Calendar m
}
}
- protected void bindStatus(AppCompatImageView noteStatus, DBStatus status, int color) {
- noteStatus.setVisibility(DBStatus.VOID.equals(status) ? INVISIBLE : VISIBLE);
+ protected void bindStatus(CircularProgressIndicator noteSyncStatus, DBStatus status, int color) {
+ noteSyncStatus.setVisibility(DBStatus.VOID.equals(status) ? INVISIBLE : VISIBLE);
- final var context = noteStatus.getContext();
+ final var context = noteSyncStatus.getContext();
final var util = BrandingUtil.of(color, context);
- util.platform.tintDrawable(context, noteStatus.getDrawable(), ColorRole.ON_PRIMARY_CONTAINER);
+ util.material.colorProgressBar(noteSyncStatus, ColorRole.PRIMARY);
}
protected void bindCategory(@NonNull Context context, @NonNull TextView noteCategory, boolean showCategory, @NonNull String category, int color) {
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolder.java b/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolder.java
index 638a2c7bb..dea52f6be 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolder.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolder.java
@@ -50,7 +50,7 @@ public void bind(boolean isSelected, @NonNull Note note, boolean showCategory, @
super.bind(isSelected, note, showCategory, color, searchQuery);
@NonNull final Context context = itemView.getContext();
bindCategory(context, binding.noteCategory, showCategory, note.getCategory(), color);
- bindStatus(binding.noteStatus, note.getStatus(), color);
+ bindStatus(binding.noteSyncStatus, note.getStatus(), color);
bindFavorite(binding.noteFavorite, note.getFavorite());
bindModified(binding.noteModified, note.getModified());
bindSearchableContent(context, binding.noteTitle, searchQuery, note.getTitle(), color);
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolderOnlyTitle.java b/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolderOnlyTitle.java
index b3a0ca67e..eb65fadbc 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolderOnlyTitle.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/main/items/grid/NoteViewGridHolderOnlyTitle.java
@@ -42,7 +42,7 @@ public void bind(boolean isSelected, @NonNull Note note, boolean showCategory, i
super.bind(isSelected, note, showCategory, color, searchQuery);
@NonNull final Context context = itemView.getContext();
bindCategory(context, binding.noteCategory, showCategory, note.getCategory(), color);
- bindStatus(binding.noteStatus, note.getStatus(), color);
+ bindStatus(binding.noteSyncStatus, note.getStatus(), color);
bindFavorite(binding.noteFavorite, note.getFavorite());
bindModified(binding.noteModified, note.getModified());
bindSearchableContent(context, binding.noteTitle, searchQuery, note.getTitle(), color);
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/main/items/list/NoteViewListHolder.java b/app/src/main/java/it/niedermann/owncloud/notes/main/items/list/NoteViewListHolder.java
index 087ee4739..08bf2c847 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/main/items/list/NoteViewListHolder.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/main/items/list/NoteViewListHolder.java
@@ -57,7 +57,7 @@ public void bind(boolean isSelected, @NonNull Note note, boolean showCategory, @
@NonNull final var context = itemView.getContext();
binding.noteCard.setAlpha(DBStatus.LOCAL_DELETED.equals(note.getStatus()) ? 0.5f : 1.0f);
bindCategory(context, binding.noteCategory, showCategory, note.getCategory(), color);
- bindStatus(binding.noteStatus, note.getStatus(), color);
+ bindStatus(binding.noteSyncStatus, note.getStatus(), color);
bindFavorite(binding.noteFavorite, note.getFavorite());
bindModified(binding.noteModified, note.getModified());
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java
index bca385faf..6209657eb 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java
@@ -20,6 +20,7 @@
import androidx.lifecycle.ViewModelProvider;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
+import com.nextcloud.android.common.ui.theme.utils.ColorRole;
import com.nextcloud.android.sso.AccountImporter;
import com.nextcloud.android.sso.exceptions.NextcloudFilesAppAccountNotFoundException;
@@ -149,7 +150,7 @@ private void changeAccountSetting(@NonNull Account localAccount, @StringRes int
mainColor$.removeObservers(this);
final var util = BrandingUtil.of(color, this);
util.material.colorTextInputLayout(binding.inputWrapper);
- util.material.colorProgressBar(binding.progress);
+ util.material.colorProgressBar(binding.progress, ColorRole.PRIMARY);
});
binding.inputWrapper.setHint(title);
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareActivity.java
index 153d92e2e..b5fb2d543 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareActivity.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareActivity.java
@@ -164,7 +164,6 @@ private void initializeArguments() {
repository.getSharesForNotesAndSaveShareEntities();
runOnUiThread(() -> {
- binding.title.setText(R.string.activity_sharing_title);
binding.fileName.setText(note.getTitle());
binding.searchContainer.setVisibility(View.VISIBLE);
binding.sharesList.setVisibility(View.VISIBLE);
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareDetailActivity.kt b/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareDetailActivity.kt
index 1cf9ec2e9..532d2edd0 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareDetailActivity.kt
+++ b/app/src/main/java/it/niedermann/owncloud/notes/share/NoteShareDetailActivity.kt
@@ -12,6 +12,7 @@ import android.os.Bundle
import android.text.TextUtils
import android.view.View
import androidx.lifecycle.lifecycleScope
+import com.nextcloud.android.common.ui.theme.utils.ColorRole
import com.nextcloud.android.sso.helper.SingleAccountHelper
import com.owncloud.android.lib.common.utils.Log_OC
import com.owncloud.android.lib.resources.shares.OCShare
@@ -46,7 +47,8 @@ import java.util.Date
* 2. This will handle both Advanced Permissions and Send New Email functionality for existing shares to modify them.
*/
@Suppress("TooManyFunctions")
-class NoteShareDetailActivity : BrandedActivity(),
+class NoteShareDetailActivity :
+ BrandedActivity(),
ExpirationDatePickerDialogFragment.OnExpiryDateListener {
companion object {
@@ -86,6 +88,8 @@ class NoteShareDetailActivity : BrandedActivity(),
binding = ActivityNoteShareDetailBinding.inflate(layoutInflater)
setContentView(binding.root)
+ setSupportActionBar(binding.toolbar)
+ binding.toolbar.setNavigationOnClickListener({ v -> backPressed() })
val arguments = intent.extras
arguments?.let {
@@ -122,6 +126,9 @@ class NoteShareDetailActivity : BrandedActivity(),
}
}
+ private fun backPressed() {
+ finish()
+ }
override fun applyBrand(color: Int) {
val util = BrandingUtil.of(color, this)
@@ -136,6 +143,8 @@ class NoteShareDetailActivity : BrandedActivity(),
colorTextView(shareProcessAdvancePermissionTitle)
themeCheckbox(shareProcessAllowResharingCheckbox)
+
+ colorTextView(title, ColorRole.ON_SURFACE)
}
util.androidx.run {
@@ -152,6 +161,8 @@ class NoteShareDetailActivity : BrandedActivity(),
colorMaterialButtonPrimaryFilled(shareProcessBtnNext)
colorMaterialButtonPrimaryOutlined(shareProcessBtnCancel)
+
+ themeToolbar(toolbar)
}
}
util.platform.colorViewBackground(window.decorView)
@@ -192,6 +203,9 @@ class NoteShareDetailActivity : BrandedActivity(),
} else {
binding.shareProcessSetExpDateSwitch.visibility = View.GONE
}
+
+ binding.noteText.setText(share?.note)
+
shareProcessStep = SCREEN_TYPE_PERMISSION
}
@@ -448,12 +462,9 @@ class NoteShareDetailActivity : BrandedActivity(),
}
}
-
- private fun getReSharePermission(): Int {
- return SharePermissionsBuilder().apply {
- setSharePermission(true)
- }.build()
- }
+ private fun getReSharePermission(): Int = SharePermissionsBuilder().apply {
+ setSharePermission(true)
+ }.build()
/**
* method to validate the step 1 screen information
diff --git a/app/src/main/res/drawable/file_calendar.xml b/app/src/main/res/drawable/file_calendar.xml
index 2fdb050e8..094fbd878 100644
--- a/app/src/main/res/drawable/file_calendar.xml
+++ b/app/src/main/res/drawable/file_calendar.xml
@@ -1,16 +1,16 @@
+ android:viewportWidth="960"
+ android:viewportHeight="960">
+ android:fillColor="@android:color/white"
+ android:pathData="M320,560Q303,560 291.5,548.5Q280,537 280,520Q280,503 291.5,491.5Q303,480 320,480Q337,480 348.5,491.5Q360,503 360,520Q360,537 348.5,548.5Q337,560 320,560ZM480,560Q463,560 451.5,548.5Q440,537 440,520Q440,503 451.5,491.5Q463,480 480,480Q497,480 508.5,491.5Q520,503 520,520Q520,537 508.5,548.5Q497,560 480,560ZM640,560Q623,560 611.5,548.5Q600,537 600,520Q600,503 611.5,491.5Q623,480 640,480Q657,480 668.5,491.5Q680,503 680,520Q680,537 668.5,548.5Q657,560 640,560ZM200,880Q167,880 143.5,856.5Q120,833 120,800L120,240Q120,207 143.5,183.5Q167,160 200,160L240,160L240,80L320,80L320,160L640,160L640,80L720,80L720,160L760,160Q793,160 816.5,183.5Q840,207 840,240L840,800Q840,833 816.5,856.5Q793,880 760,880L200,880ZM200,800L760,800Q760,800 760,800Q760,800 760,800L760,400L200,400L200,800Q200,800 200,800Q200,800 200,800ZM200,320L760,320L760,240Q760,240 760,240Q760,240 760,240L200,240Q200,240 200,240Q200,240 200,240L200,320ZM200,320L200,240Q200,240 200,240Q200,240 200,240L200,240Q200,240 200,240Q200,240 200,240L200,320Z" />
diff --git a/app/src/main/res/drawable/ic_close_24px.xml b/app/src/main/res/drawable/ic_close_24px.xml
new file mode 100644
index 000000000..e5758814d
--- /dev/null
+++ b/app/src/main/res/drawable/ic_close_24px.xml
@@ -0,0 +1,16 @@
+
+
+
+
diff --git a/app/src/main/res/drawable/ic_sync_blue_18dp.xml b/app/src/main/res/drawable/ic_sync_blue_18dp.xml
deleted file mode 100644
index 5bb3ada2e..000000000
--- a/app/src/main/res/drawable/ic_sync_blue_18dp.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
diff --git a/app/src/main/res/layout/activity_note_share.xml b/app/src/main/res/layout/activity_note_share.xml
index 525fb7a9a..ffeb8cf6b 100644
--- a/app/src/main/res/layout/activity_note_share.xml
+++ b/app/src/main/res/layout/activity_note_share.xml
@@ -59,9 +59,9 @@
android:layout_height="wrap_content"
android:ellipsize="end"
android:lines="1"
+ android:text="@string/activity_sharing_title"
android:textColor="@color/fontAppbar"
- android:textSize="18sp"
- tools:text="Share Note" />
+ android:textSize="18sp" />
+ android:focusableInTouchMode="true">
+
+
+
+
+
+
+ app:layout_constraintTop_toBottomOf="@id/toolbar">
+ android:layout_height="wrap_content"
+ android:layout_marginTop="@dimen/spacer_2x"
+ android:orientation="horizontal"
+ android:weightSum="1.0">
+ app:cornerRadius="@dimen/button_corner_radius" />
+ android:layout_height="?android:attr/actionBarSize" />
diff --git a/app/src/main/res/layout/item_notes_list_note_item_grid.xml b/app/src/main/res/layout/item_notes_list_note_item_grid.xml
index f7884c32b..bb6ca6e8e 100644
--- a/app/src/main/res/layout/item_notes_list_note_item_grid.xml
+++ b/app/src/main/res/layout/item_notes_list_note_item_grid.xml
@@ -75,15 +75,15 @@
android:paddingEnd="@dimen/spacer_list_card"
android:src="@drawable/ic_checkbox_blank_outline" />
-
+ android:layout_marginStart="16dp"
+ android:indeterminate="true"
+ app:indicatorInset="@dimen/zero"
+ app:indicatorSize="24dp"
+ app:trackThickness="3dp" />
-
+ android:layout_marginStart="16dp"
+ android:indeterminate="true"
+ app:indicatorInset="@dimen/zero"
+ app:indicatorSize="24dp"
+ app:trackThickness="3dp" />
-
+ android:layout_marginStart="10dp"
+ android:layout_marginTop="18dp"
+ android:indeterminate="true"
+ app:indicatorInset="@dimen/zero"
+ app:indicatorSize="28dp"
+ app:trackThickness="3dp" />
More Nextcloud Apps
More
Sharing
+ Sharing Details
Share expires on %1$s
Dismiss
diff --git a/build.gradle b/build.gradle
index e9fac5bd5..7142dd7f4 100644
--- a/build.gradle
+++ b/build.gradle
@@ -13,7 +13,7 @@ buildscript {
kotlinVersion = '2.3.0'
commonsVersion = '2.4.1'
androidCommonsVersion = '1.1.1'
- nextcloudAndroidCommonLib = "0.30.0"
+ nextcloudAndroidCommonLib = "0.31.0"
singleSignOnVersion = "1.3.4"
}
repositories {
diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index 0da5444e7..cd9e22424 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -37,6 +37,8 @@
+
+
@@ -799,6 +801,16 @@
+
+
+
+
+
+
+
+
+
+
@@ -839,6 +851,14 @@
+
+
+
+
+
+
+
+
@@ -903,6 +923,11 @@
+
+
+
+
+
@@ -943,6 +968,14 @@
+
+
+
+
+
+
+
+
@@ -1007,6 +1040,11 @@
+
+
+
+
+
@@ -1047,6 +1085,14 @@
+
+
+
+
+
+
+
+
@@ -1111,6 +1157,11 @@
+
+
+
+
+
@@ -1151,6 +1202,14 @@
+
+
+
+
+
+
+
+
@@ -1241,6 +1300,11 @@
+
+
+
+
+
@@ -1281,6 +1345,14 @@
+
+
+
+
+
+
+
+
@@ -1384,6 +1456,11 @@
+
+
+
+
+
@@ -1424,6 +1501,14 @@
+
+
+
+
+
+
+
+
@@ -1488,6 +1573,11 @@
+
+
+
+
+
@@ -1508,6 +1598,14 @@
+
+
+
+
+
+
+
+
@@ -1540,6 +1638,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1580,6 +1696,14 @@
+
+
+
+
+
+
+
+
@@ -1644,6 +1768,11 @@
+
+
+
+
+
@@ -1684,6 +1813,14 @@
+
+
+
+
+
+
+
+
@@ -1748,6 +1885,11 @@
+
+
+
+
+
@@ -1788,6 +1930,14 @@
+
+
+
+
+
+
+
+
@@ -1852,6 +2002,11 @@
+
+
+
+
+
@@ -1892,6 +2047,14 @@
+
+
+
+
+
+
+
+
@@ -1956,6 +2119,11 @@
+
+
+
+
+
@@ -1996,6 +2164,14 @@
+
+
+
+
+
+
+
+
@@ -2060,6 +2236,11 @@
+
+
+
+
+
@@ -2100,6 +2281,14 @@
+
+
+
+
+
+
+
+
@@ -2164,6 +2353,11 @@
+
+
+
+
+
@@ -2204,6 +2398,14 @@
+
+
+
+
+
+
+
+
@@ -5112,6 +5314,14 @@
+
+
+
+
+
+
+
+
@@ -5184,6 +5394,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -12521,6 +12752,14 @@
+
+
+
+
+
+
+
+
@@ -12673,6 +12912,14 @@
+
+
+
+
+
+
+
+
@@ -12865,6 +13112,14 @@
+
+
+
+
+
+
+
+
@@ -13061,6 +13316,14 @@
+
+
+
+
+
+
+
+
@@ -17834,6 +18097,14 @@
+
+
+
+
+
+
+
+
@@ -18485,6 +18756,14 @@
+
+
+
+
+
+
+
+
@@ -18586,6 +18865,14 @@
+
+
+
+
+
+
+
+