diff options
Diffstat (limited to 'platform/android/src/com/artifex/mupdfdemo/Stepper.java')
-rw-r--r-- | platform/android/src/com/artifex/mupdfdemo/Stepper.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/platform/android/src/com/artifex/mupdfdemo/Stepper.java b/platform/android/src/com/artifex/mupdfdemo/Stepper.java new file mode 100644 index 00000000..d22240ef --- /dev/null +++ b/platform/android/src/com/artifex/mupdfdemo/Stepper.java @@ -0,0 +1,42 @@ +package com.artifex.mupdfdemo; + +import android.annotation.SuppressLint; +import android.os.Build; +import android.view.View; + +public class Stepper { + protected final View mPoster; + protected final Runnable mTask; + protected boolean mPending; + + public Stepper(View v, Runnable r) { + mPoster = v; + mTask = r; + mPending = false; + } + + @SuppressLint("NewApi") + public void prod() { + if (!mPending) { + mPending = true; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { + mPoster.postOnAnimation(new Runnable() { + @Override + public void run() { + mPending = false; + mTask.run(); + } + }); + } else { + mPoster.post(new Runnable() { + @Override + public void run() { + mPending = false; + mTask.run(); + } + }); + + } + } + } +} |