diff options
author | Chris Wren <cwren@android.com> | 2013-03-27 17:13:12 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2013-03-27 17:13:12 -0700 |
commit | 0fba234a706e1be289e79545d93ee066f4826614 (patch) | |
tree | 3d04ba5a0e4b3c154a93605520f6c0bb434e75eb | |
parent | c24518dcd5f96c514033ab514c7dd1cfbb82e7f3 (diff) | |
parent | 7d7ef97309a40e50a0e911add6781f95d8daa27d (diff) | |
download | android_packages_screensavers_PhotoTable-0fba234a706e1be289e79545d93ee066f4826614.tar.gz android_packages_screensavers_PhotoTable-0fba234a706e1be289e79545d93ee066f4826614.tar.bz2 android_packages_screensavers_PhotoTable-0fba234a706e1be289e79545d93ee066f4826614.zip |
am 7d7ef973: am 387363c4: tune re-deal behavior on photo table.
* commit '7d7ef97309a40e50a0e911add6781f95d8daa27d':
tune re-deal behavior on photo table.
-rw-r--r-- | res/values-sw600dp/config.xml | 3 | ||||
-rw-r--r-- | res/values-sw800dp/config.xml | 4 | ||||
-rw-r--r-- | res/values/config.xml | 4 | ||||
-rw-r--r-- | src/com/android/dreams/phototable/PhotoTable.java | 23 |
4 files changed, 16 insertions, 18 deletions
diff --git a/res/values-sw600dp/config.xml b/res/values-sw600dp/config.xml index 4a8a67f..e1ad849 100644 --- a/res/values-sw600dp/config.xml +++ b/res/values-sw600dp/config.xml @@ -16,5 +16,8 @@ <resources> <!-- Parts per million ratio between image size and screen size. --> <integer name="image_ratio">750000</integer> + + <!-- Parts per million ratio between image size on the table and screen size. --> + <integer name="table_ratio">300000</integer> </resources> diff --git a/res/values-sw800dp/config.xml b/res/values-sw800dp/config.xml index eeefc3a..699e15a 100644 --- a/res/values-sw800dp/config.xml +++ b/res/values-sw800dp/config.xml @@ -15,10 +15,10 @@ --> <resources> <!-- Milliseconds between drops. --> - <integer name="table_drop_period">90000</integer> + <integer name="table_drop_period">75000</integer> <!-- Milliseconds to wait before the next fast drop.--> - <integer name="fast_drop">10000</integer> + <integer name="fast_drop">5000</integer> <!-- Parts per million ratio between image size and screen size. --> <integer name="image_ratio">500000</integer> diff --git a/res/values/config.xml b/res/values/config.xml index d8d745d..36835c9 100644 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -18,7 +18,7 @@ <integer name="table_drop_period">45000</integer> <!-- Milliseconds to wait before the next fast drop.--> - <integer name="fast_drop">4000</integer> + <integer name="fast_drop">3000</integer> <!-- Milliseconds between drops. --> <integer name="carousel_drop_period">10000</integer> @@ -33,7 +33,7 @@ <integer name="table_capacity">10</integer> <!-- Number of images to discard at a time.--> - <integer name="redeal_count">3</integer> + <integer name="redeal_count">5</integer> <!-- Parts per million ratio between image size and screen size. --> <integer name="image_ratio">500000</integer> diff --git a/src/com/android/dreams/phototable/PhotoTable.java b/src/com/android/dreams/phototable/PhotoTable.java index 50212c9..36b274c 100644 --- a/src/com/android/dreams/phototable/PhotoTable.java +++ b/src/com/android/dreams/phototable/PhotoTable.java @@ -119,7 +119,7 @@ public class PhotoTable extends FrameLayout { mStarted = false; } - + public void setDream(DreamService dream) { mDream = dream; } @@ -297,6 +297,13 @@ public class PhotoTable extends FrameLayout { log("drop it"); table.throwOnTable(photo); + if (mOnTable.size() > mTableCapacity) { + int targetSize = Math.max(0, mOnTable.size() - mRedealCount); + while (mOnTable.size() > targetSize) { + fadeAway(mOnTable.poll(), false); + } + } + if(table.mOnTable.size() < table.mTableCapacity) { table.scheduleNext(table.mFastDropPeriod); } @@ -399,19 +406,7 @@ public class PhotoTable extends FrameLayout { .x(x) .y(y) .setDuration(duration) - .setInterpolator(interpolator) - .withEndAction(new Runnable() { - @Override - public void run() { - if (mOnTable.size() > mTableCapacity) { - while (mOnTable.size() > (mTableCapacity - mRedealCount)) { - fadeAway(mOnTable.poll(), false); - } - // zero delay because we already waited duration ms - scheduleNext(0); - } - } - }); + .setInterpolator(interpolator); } /** wrap all orientations to the interval [-180, 180). */ |