Fix background pivot point

am: e661f40

* commit 'e661f4001c2729737618eccaf9032c2d2e4281bc':
  Fix background pivot point
This commit is contained in:
Jorim Jaggi
2016-03-26 02:27:41 +00:00
committed by android-build-merger

View File

@@ -171,6 +171,13 @@ public class DividerView extends FrameLayout implements OnTouchListener,
}
};
private final Runnable mResetBackgroundRunnable = new Runnable() {
@Override
public void run() {
resetBackground();
}
};
public DividerView(Context context) {
super(context);
}
@@ -519,15 +526,17 @@ public class DividerView extends FrameLayout implements OnTouchListener,
public void setMinimizedDockStack(boolean minimized) {
updateDockSide();
mHandle.setAlpha(minimized ? 0f : 1f);
if (mDockSide == WindowManager.DOCKED_TOP) {
if (!minimized) {
resetBackground();
} else if (mDockSide == WindowManager.DOCKED_TOP) {
mBackground.setPivotY(0);
mBackground.setScaleY(minimized ? MINIMIZE_DOCK_SCALE : 1f);
mBackground.setScaleY(MINIMIZE_DOCK_SCALE);
} else if (mDockSide == WindowManager.DOCKED_LEFT
|| mDockSide == WindowManager.DOCKED_RIGHT) {
mBackground.setPivotX(mDockSide == WindowManager.DOCKED_LEFT
? 0
: mBackground.getWidth());
mBackground.setScaleX(minimized ? MINIMIZE_DOCK_SCALE : 1f);
mBackground.setScaleX(MINIMIZE_DOCK_SCALE);
}
}
@@ -550,12 +559,22 @@ public class DividerView extends FrameLayout implements OnTouchListener,
mBackground.animate()
.scaleX(minimized ? MINIMIZE_DOCK_SCALE : 1f);
}
if (!minimized) {
mBackground.animate().withEndAction(mResetBackgroundRunnable);
}
mBackground.animate()
.setInterpolator(Interpolators.FAST_OUT_SLOW_IN)
.setDuration(animDuration)
.start();
}
private void resetBackground() {
mBackground.setPivotX(mBackground.getWidth() / 2);
mBackground.setPivotY(mBackground.getHeight() / 2);
mBackground.setScaleX(1f);
mBackground.setScaleY(1f);
}
@Override
protected void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);