Move support libs to use ViewCompat.offset* methods
offsetTopAndBottom and offsetLeftAndRight have various
issues across the API levels, which are worked around
in the ViewCompat versions.
BUG: 29970143
Change-Id: Ic0919f438a0c4a6bf4f2e153a6062d5aeb727db1
diff --git a/core-ui/java/android/support/v4/widget/SwipeRefreshLayout.java b/core-ui/java/android/support/v4/widget/SwipeRefreshLayout.java
index fc6c219..0c5f335 100644
--- a/core-ui/java/android/support/v4/widget/SwipeRefreshLayout.java
+++ b/core-ui/java/android/support/v4/widget/SwipeRefreshLayout.java
@@ -1149,7 +1149,7 @@
private void setTargetOffsetTopAndBottom(int offset, boolean requiresUpdate) {
mCircleView.bringToFront();
- mCircleView.offsetTopAndBottom(offset);
+ ViewCompat.offsetTopAndBottom(mCircleView, offset);
mCurrentTargetOffsetTop = mCircleView.getTop();
if (requiresUpdate && android.os.Build.VERSION.SDK_INT < 11) {
invalidate();
diff --git a/design/src/android/support/design/widget/CoordinatorLayout.java b/design/src/android/support/design/widget/CoordinatorLayout.java
index 4dcce62..db9eede 100644
--- a/design/src/android/support/design/widget/CoordinatorLayout.java
+++ b/design/src/android/support/design/widget/CoordinatorLayout.java
@@ -1495,10 +1495,10 @@
final int dy = desiredChildRect.top - childRect.top;
if (dx != 0) {
- child.offsetLeftAndRight(dx);
+ ViewCompat.offsetLeftAndRight(child, dx);
}
if (dy != 0) {
- child.offsetTopAndBottom(dy);
+ ViewCompat.offsetTopAndBottom(child, dy);
}
if (changed) {
diff --git a/design/src/android/support/design/widget/FloatingActionButton.java b/design/src/android/support/design/widget/FloatingActionButton.java
index eed92f0..e000656 100644
--- a/design/src/android/support/design/widget/FloatingActionButton.java
+++ b/design/src/android/support/design/widget/FloatingActionButton.java
@@ -788,8 +788,12 @@
offsetTB = -padding.top;
}
- fab.offsetTopAndBottom(offsetTB);
- fab.offsetLeftAndRight(offsetLR);
+ if (offsetTB != 0) {
+ ViewCompat.offsetTopAndBottom(fab, offsetTB);
+ }
+ if (offsetLR != 0) {
+ ViewCompat.offsetLeftAndRight(fab, offsetLR);
+ }
}
}
}
diff --git a/transition/ics/android/support/transition/FadePort.java b/transition/ics/android/support/transition/FadePort.java
index dad6b80..c131449 100644
--- a/transition/ics/android/support/transition/FadePort.java
+++ b/transition/ics/android/support/transition/FadePort.java
@@ -20,6 +20,7 @@
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.animation.ValueAnimator;
+import android.support.v4.view.ViewCompat;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
@@ -244,8 +245,8 @@
int screenY = (Integer) startValues.values.get(PROPNAME_SCREEN_Y);
int[] loc = new int[2];
sceneRoot.getLocationOnScreen(loc);
- overlayView.offsetLeftAndRight((screenX - loc[0]) - overlayView.getLeft());
- overlayView.offsetTopAndBottom((screenY - loc[1]) - overlayView.getTop());
+ ViewCompat.offsetLeftAndRight(overlayView, (screenX - loc[0]) - overlayView.getLeft());
+ ViewCompat.offsetTopAndBottom(overlayView, (screenY - loc[1]) - overlayView.getTop());
ViewGroupOverlay.createFrom(sceneRoot).add(overlayView);
// sceneRoot.getOverlay().add(overlayView);
// TODO: add automatic facility to Visibility superclass for keeping views around
diff --git a/transition/ics/android/support/transition/ViewOverlay.java b/transition/ics/android/support/transition/ViewOverlay.java
index 995479f..9cea400 100644
--- a/transition/ics/android/support/transition/ViewOverlay.java
+++ b/transition/ics/android/support/transition/ViewOverlay.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.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
@@ -216,8 +217,8 @@
int[] hostViewLocation = new int[2];
parent.getLocationOnScreen(parentLocation);
mHostView.getLocationOnScreen(hostViewLocation);
- child.offsetLeftAndRight(parentLocation[0] - hostViewLocation[0]);
- child.offsetTopAndBottom(parentLocation[1] - hostViewLocation[1]);
+ ViewCompat.offsetLeftAndRight(child, parentLocation[0] - hostViewLocation[0]);
+ ViewCompat.offsetTopAndBottom(child, parentLocation[1] - hostViewLocation[1]);
}
parent.removeView(child);
// if (parent.getLayoutTransition() != null) {