1package eu.siacs.conversations.ui;
 2
 3import androidx.recyclerview.widget.LinearLayoutManager;
 4import androidx.recyclerview.widget.RecyclerView;
 5
 6public final class RecyclerViews {
 7
 8    private RecyclerViews() {
 9        throw new IllegalStateException("Do not instantiate me");
10    }
11
12    public static boolean scrolledToTop(final RecyclerView recyclerView) {
13        final RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
14        if (layoutManager instanceof LinearLayoutManager linearLayoutManager) {
15            return linearLayoutManager.findFirstCompletelyVisibleItemPosition() == 0;
16        } else {
17            return false;
18        }
19    }
20
21    public static int findFirstVisibleItemPosition(final RecyclerView recyclerView) {
22        final RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
23        if (layoutManager instanceof LinearLayoutManager linearLayoutManager) {
24            return linearLayoutManager.findFirstVisibleItemPosition();
25        } else {
26            return RecyclerView.NO_POSITION;
27        }
28    }
29}