From d6b69762773d0eca6c49f277841e1be71e713fd2 Mon Sep 17 00:00:00 2001 From: seven332 Date: Mon, 21 Mar 2016 14:21:24 +0800 Subject: [PATCH] Make ReversibleSeekBar safe --- .../com/hippo/ehviewer/widget/ReversibleSeekBar.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/widget/ReversibleSeekBar.java b/app/src/main/java/com/hippo/ehviewer/widget/ReversibleSeekBar.java index 01a710fa8..7a5d40a26 100644 --- a/app/src/main/java/com/hippo/ehviewer/widget/ReversibleSeekBar.java +++ b/app/src/main/java/com/hippo/ehviewer/widget/ReversibleSeekBar.java @@ -45,29 +45,31 @@ public class ReversibleSeekBar extends AppCompatSeekBar { @Override public void draw(Canvas canvas) { + boolean reverse = mReverse; int saveCount = 0; - if (mReverse) { + if (reverse) { saveCount = canvas.save(); float px = this.getWidth() / 2.0f; float py = this.getHeight() / 2.0f; canvas.scale(-1, 1, px, py); } super.draw(canvas); - if (mReverse) { + if (reverse) { canvas.restoreToCount(saveCount); } } @Override public boolean onTouchEvent(MotionEvent event) { + boolean reverse = mReverse; float x = 0.0f, y = 0.0f; - if (mReverse) { + if (reverse) { x = event.getX(); y = event.getY(); event.setLocation(getWidth() - x, y); } boolean result = super.onTouchEvent(event); - if (mReverse) { + if (reverse) { event.setLocation(x, y); } return result;