Enabled fast scrolling for folders

pull/177/head
M66B 6 years ago
parent 206d6e353c
commit eda80a9f3f

@ -240,6 +240,15 @@ public class FragmentFolders extends FragmentBase {
} }
}); });
swipeRefresh.setOnChildScrollUpCallback(new SwipeRefreshLayout.OnChildScrollUpCallback() {
@Override
public boolean canChildScrollUp(@NonNull SwipeRefreshLayout parent, @Nullable View child) {
if (!prefs.getBoolean("pull", true))
return true;
return rvFolder.canScrollVertically(-1);
}
});
// Initialize // Initialize
if (cards && !Helper.isDarkTheme(getContext())) if (cards && !Helper.isDarkTheme(getContext()))

@ -3,13 +3,13 @@
<item android:state_pressed="true"> <item android:state_pressed="true">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="?attr/colorAccent" /> <solid android:color="?attr/colorAccent" />
<size android:width="9dp" android:height="60dp" /> <size android:width="6dp" android:height="60dp" />
</shape> </shape>
</item> </item>
<item> <item>
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="?attr/colorSeparator" /> <solid android:color="?attr/colorThumb" />
<size android:width="9dp" android:height="60dp" /> <size android:width="6dp" android:height="60dp" />
</shape> </shape>
</item> </item>
</selector> </selector>

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<solid android:color="?attr/colorAccent" />
<size android:width="9dp" android:height="60dp" />
</shape>
</item>
</selector>

@ -38,14 +38,18 @@
app:layout_constraintTop_toTopOf="@+id/etSearch" app:layout_constraintTop_toTopOf="@+id/etSearch"
app:srcCompat="@drawable/baseline_fast_forward_24" /> app:srcCompat="@drawable/baseline_fast_forward_24" />
<androidx.recyclerview.widget.RecyclerView <eu.faircode.email.FixedRecyclerView
android:id="@+id/rvFolder" android:id="@+id/rvFolder"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="6dp" android:layout_marginTop="6dp"
android:scrollbarStyle="outsideOverlay" android:scrollbarStyle="outsideOverlay"
android:scrollbarThumbVertical="@drawable/scroll_thumb_dialog" android:scrollbars="none"
android:scrollbars="vertical" app:fastScrollEnabled="false"
app:fastScrollHorizontalThumbDrawable="@drawable/scroll_thumb"
app:fastScrollHorizontalTrackDrawable="@drawable/scroll_track"
app:fastScrollVerticalThumbDrawable="@drawable/scroll_thumb"
app:fastScrollVerticalTrackDrawable="@drawable/scroll_track"
app:layout_constrainedHeight="true" app:layout_constrainedHeight="true"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"

@ -13,7 +13,7 @@
android:clipToPadding="false" android:clipToPadding="false"
android:paddingBottom="60dp" android:paddingBottom="60dp"
android:scrollbarStyle="outsideOverlay" android:scrollbarStyle="outsideOverlay"
android:scrollbarThumbVertical="@drawable/scroll_thumb_dialog" android:scrollbarThumbVertical="@drawable/scroll_thumb"
android:scrollbars="vertical" android:scrollbars="vertical"
app:layout_constrainedHeight="true" app:layout_constrainedHeight="true"
app:layout_constraintBottom_toTopOf="@+id/tvPro" app:layout_constraintBottom_toTopOf="@+id/tvPro"

@ -22,7 +22,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:padding="12dp" android:padding="12dp"
android:scrollbarStyle="outsideOverlay" android:scrollbarStyle="outsideOverlay"
android:scrollbarThumbVertical="@drawable/scroll_thumb_dialog" android:scrollbarThumbVertical="@drawable/scroll_thumb"
android:scrollbars="vertical" android:scrollbars="vertical"
app:layout_constrainedHeight="true" app:layout_constrainedHeight="true"
app:layout_constraintBottom_toTopOf="@+id/btnExecute" app:layout_constraintBottom_toTopOf="@+id/btnExecute"

@ -83,7 +83,7 @@
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvHintSync" /> app:layout_constraintTop_toBottomOf="@id/tvHintSync" />
<androidx.recyclerview.widget.RecyclerView <eu.faircode.email.FixedRecyclerView
android:id="@+id/rvFolder" android:id="@+id/rvFolder"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="0dp" android:layout_height="0dp"
@ -91,7 +91,12 @@
android:paddingTop="6dp" android:paddingTop="6dp"
android:paddingBottom="90dp" android:paddingBottom="90dp"
android:scrollbarStyle="outsideOverlay" android:scrollbarStyle="outsideOverlay"
android:scrollbars="vertical" android:scrollbars="none"
app:fastScrollEnabled="false"
app:fastScrollHorizontalThumbDrawable="@drawable/scroll_thumb"
app:fastScrollHorizontalTrackDrawable="@drawable/scroll_track"
app:fastScrollVerticalThumbDrawable="@drawable/scroll_thumb"
app:fastScrollVerticalTrackDrawable="@drawable/scroll_track"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"

@ -22,6 +22,7 @@
<color name="lightColorItemSelected">#ccc</color> <color name="lightColorItemSelected">#ccc</color>
<color name="lightColorSeparator">#ccc</color> <color name="lightColorSeparator">#ccc</color>
<color name="lightColorThumb">#ccc</color>
<color name="lightColorWarning">#ffff0000</color> <color name="lightColorWarning">#ffff0000</color>
<color name="lightColorDrawerScrim">#99000000</color> <color name="lightColorDrawerScrim">#99000000</color>
@ -37,6 +38,7 @@
<color name="darkColorItemSelected">#444</color> <color name="darkColorItemSelected">#444</color>
<color name="darkColorSeparator">#444</color> <color name="darkColorSeparator">#444</color>
<color name="darkColorThumb">#555</color>
<color name="darkColorWarning">#ffffb74d</color> <color name="darkColorWarning">#ffffb74d</color>
<color name="darkColorDrawerScrim">#997f7f7f</color> <color name="darkColorDrawerScrim">#997f7f7f</color>

@ -3,4 +3,5 @@
<dimen name="fab_padding">15dp</dimen> <dimen name="fab_padding">15dp</dimen>
<dimen name="design_bottom_navigation_text_size" tools:override="true">12sp</dimen> <dimen name="design_bottom_navigation_text_size" tools:override="true">12sp</dimen>
<dimen name="design_bottom_navigation_active_text_size" tools:override="true">12sp</dimen> <dimen name="design_bottom_navigation_active_text_size" tools:override="true">12sp</dimen>
<dimen name="fastscroll_default_thickness" tools:override="true">6dp</dimen>
</resources> </resources>

@ -6,6 +6,7 @@
<attr name="colorHighlight" format="reference" /> <attr name="colorHighlight" format="reference" />
<attr name="colorEncrypt" format="reference" /> <attr name="colorEncrypt" format="reference" />
<attr name="colorSeparator" format="reference" /> <attr name="colorSeparator" format="reference" />
<attr name="colorThumb" format="reference" />
<attr name="colorWarning" format="reference" /> <attr name="colorWarning" format="reference" />
<attr name="colorDrawerScrim" format="reference" /> <attr name="colorDrawerScrim" format="reference" />
<attr name="colorDrawerText" format="reference" /> <attr name="colorDrawerText" format="reference" />
@ -32,7 +33,7 @@
<item name="colorEncrypt">@color/colorEncryptLight</item> <item name="colorEncrypt">@color/colorEncryptLight</item>
<item name="colorSeparator">@color/lightColorSeparator</item> <item name="colorSeparator">@color/lightColorSeparator</item>
<item name="colorThumb">@color/lightColorThumb</item>
<item name="colorWarning">@color/lightColorWarning</item> <item name="colorWarning">@color/lightColorWarning</item>
<item name="colorDrawerScrim">@color/lightColorDrawerScrim</item> <item name="colorDrawerScrim">@color/lightColorDrawerScrim</item>
@ -74,7 +75,7 @@
<item name="colorEncrypt">@color/colorEncryptDark</item> <item name="colorEncrypt">@color/colorEncryptDark</item>
<item name="colorSeparator">@color/darkColorSeparator</item> <item name="colorSeparator">@color/darkColorSeparator</item>
<item name="colorThumb">@color/darkColorThumb</item>
<item name="colorWarning">@color/darkColorWarning</item> <item name="colorWarning">@color/darkColorWarning</item>
<item name="colorDrawerScrim">@color/darkColorDrawerScrim</item> <item name="colorDrawerScrim">@color/darkColorDrawerScrim</item>

Loading…
Cancel
Save