Merge branch 'padding' into 'master'

Fix extra large padding after every five items on main page

See merge request fdroid/fdroidclient!850
This commit is contained in:
Hans-Christoph Steiner 2019-10-29 17:27:23 +00:00
commit 4312deb4c8
2 changed files with 6 additions and 4 deletions

View File

@ -146,11 +146,13 @@ public class WhatsNewAdapter extends RecyclerView.Adapter<AppCardController> {
int verticalPadding = (int) resources.getDimension(R.dimen.whats_new__padding__app_card__vertical); int verticalPadding = (int) resources.getDimension(R.dimen.whats_new__padding__app_card__vertical);
int relativePositionInCycle = position % 5; int relativePositionInCycle = position % 5;
if (relativePositionInCycle != 0) { if (position == 0) {
outRect.set(horizontalPadding, verticalPadding, horizontalPadding, verticalPadding);
} else if (relativePositionInCycle != 0) {
// The item on the left will have both left and right padding. The item on the right // The item on the left will have both left and right padding. The item on the right
// will only have padding on the right. This will allow the same amount of padding // will only have padding on the right. This will allow the same amount of padding
// on the left, centre, and right of the grid, rather than double the padding in the // on the left, centre, and right of the grid, rather than double the padding in the
// middle (which would happen if both left+right paddings were set for both items). // middle (which would happen if both left and right padding was set for both items).
boolean isLtr = ViewCompat.getLayoutDirection(parent) == ViewCompat.LAYOUT_DIRECTION_LTR; boolean isLtr = ViewCompat.getLayoutDirection(parent) == ViewCompat.LAYOUT_DIRECTION_LTR;
boolean isAtStart = relativePositionInCycle == 1 || relativePositionInCycle == 3; boolean isAtStart = relativePositionInCycle == 1 || relativePositionInCycle == 3;
int paddingStart = isAtStart ? horizontalPadding : 0; int paddingStart = isAtStart ? horizontalPadding : 0;
@ -158,7 +160,7 @@ public class WhatsNewAdapter extends RecyclerView.Adapter<AppCardController> {
int paddingRight = isLtr ? horizontalPadding : paddingStart; int paddingRight = isLtr ? horizontalPadding : paddingStart;
outRect.set(paddingLeft, 0, paddingRight, verticalPadding); outRect.set(paddingLeft, 0, paddingRight, verticalPadding);
} else { } else {
outRect.set(horizontalPadding, verticalPadding, horizontalPadding, verticalPadding); outRect.set(horizontalPadding, 0, horizontalPadding, verticalPadding);
} }
} }
} }

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- <!--
Used to separate two sepparate R.layout.app_list_item views in a list. Used to separate two separate R.layout.app_list_item views in a list.
As these are not cards, they don't have their own drop shadow or other features that help As these are not cards, they don't have their own drop shadow or other features that help
separate different list items. separate different list items.
--> -->