Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/android.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÁlvaro Brey <alvaro.brey@nextcloud.com>2022-05-05 16:12:14 +0300
committerÁlvaro Brey <alvaro.brey@nextcloud.com>2022-05-05 16:51:58 +0300
commitea4222a1ae326ec97f6d4162978d0ffa6db1cbc3 (patch)
treeba970657e4fdb9729310caf5dd19fb58451eb1ef
parent09b95951c5cee4ebd0d030f9360ba14d2dca93ab (diff)
FileDisplayActivity: fix appbar for fast scrollnew-fastscroll-lib
Adds padding at the bottom if appbar is not collapsed Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
-rw-r--r--app/src/main/java/com/nextcloud/utils/view/FastScroll.kt17
-rw-r--r--app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java5
2 files changed, 21 insertions, 1 deletions
diff --git a/app/src/main/java/com/nextcloud/utils/view/FastScroll.kt b/app/src/main/java/com/nextcloud/utils/view/FastScroll.kt
index 1eecdaec16..2d268a5f61 100644
--- a/app/src/main/java/com/nextcloud/utils/view/FastScroll.kt
+++ b/app/src/main/java/com/nextcloud/utils/view/FastScroll.kt
@@ -27,7 +27,9 @@
package com.nextcloud.utils.view
+import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
+import com.google.android.material.appbar.AppBarLayout
import me.zhanghai.android.fastscroll.FastScroller
import me.zhanghai.android.fastscroll.FastScrollerBuilder
@@ -41,4 +43,19 @@ object FastScroll {
}
builder.build()
}
+
+ @JvmStatic
+ fun fixAppBarForFastScroll(appBarLayout: AppBarLayout, content: ViewGroup) {
+ val contentLayoutInitialPaddingBottom = content.paddingBottom
+ appBarLayout.addOnOffsetChangedListener(
+ AppBarLayout.OnOffsetChangedListener { _, offset ->
+ content.setPadding(
+ content.paddingLeft,
+ content.paddingTop,
+ content.paddingRight,
+ contentLayoutInitialPaddingBottom + appBarLayout.totalScrollRange + offset
+ )
+ }
+ )
+ }
}
diff --git a/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java b/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java
index 2913cf2020..0bb1e030b7 100644
--- a/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java
+++ b/app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java
@@ -61,6 +61,7 @@ import com.nextcloud.client.network.ConnectivityService;
import com.nextcloud.client.preferences.AppPreferences;
import com.nextcloud.client.utils.IntentUtil;
import com.nextcloud.java.util.Optional;
+import com.nextcloud.utils.view.FastScroll;
import com.owncloud.android.MainApp;
import com.owncloud.android.R;
import com.owncloud.android.databinding.FilesBinding;
@@ -137,7 +138,6 @@ import androidx.annotation.NonNull;
import androidx.annotation.VisibleForTesting;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.widget.SearchView;
-import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.core.view.MenuItemCompat;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
@@ -266,6 +266,9 @@ public class FileDisplayActivity extends FileActivity
mSwitchAccountButton.setOnClickListener(v -> showManageAccountsDialog());
+ FastScroll.fixAppBarForFastScroll(binding.appbar.appbar, binding.rootLayout);
+
+
// Init Fragment without UI to retain AsyncTask across configuration changes
FragmentManager fm = getSupportFragmentManager();
TaskRetainerFragment taskRetainerFragment =