Update divider item decorator to account for view translation
Bug: 16241985
Change-Id: Id441a07fe547493007e9e05d1039bac526847a1c
diff --git a/samples/Support7Demos/src/com/example/android/supportv7/widget/decorator/DividerItemDecoration.java b/samples/Support7Demos/src/com/example/android/supportv7/widget/decorator/DividerItemDecoration.java
index 4d5d208..4386f4f 100644
--- a/samples/Support7Demos/src/com/example/android/supportv7/widget/decorator/DividerItemDecoration.java
+++ b/samples/Support7Demos/src/com/example/android/supportv7/widget/decorator/DividerItemDecoration.java
@@ -21,6 +21,7 @@
import android.graphics.Canvas;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
+import android.support.v4.view.ViewCompat;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
@@ -71,7 +72,8 @@
final View child = parent.getChildAt(i);
final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child
.getLayoutParams();
- final int top = child.getBottom() + params.bottomMargin;
+ final int top = child.getBottom() + params.bottomMargin +
+ Math.round(ViewCompat.getTranslationY(child));
final int bottom = top + mDivider.getIntrinsicHeight();
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(c);
@@ -87,7 +89,8 @@
final View child = parent.getChildAt(i);
final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child
.getLayoutParams();
- final int left = child.getRight() + params.rightMargin;
+ final int left = child.getRight() + params.rightMargin +
+ Math.round(ViewCompat.getTranslationX(child));
final int right = left + mDivider.getIntrinsicHeight();
mDivider.setBounds(left, top, right, bottom);
mDivider.draw(c);