summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java
diff options
context:
space:
mode:
authorYuli Huang <yuli@google.com>2012-04-24 15:20:28 +0800
committerYuli Huang <yuli@google.com>2012-04-24 15:20:28 +0800
commit4072ab93a57bcb2ad9fab6f42edf3805420080ec (patch)
treef7c4f04f8a0011319f85357851a6f469093bde36 /src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java
parent85c9ea40b0026befe79c4ba866a73f5d58ee5555 (diff)
downloadandroid_packages_apps_Snap-4072ab93a57bcb2ad9fab6f42edf3805420080ec.tar.gz
android_packages_apps_Snap-4072ab93a57bcb2ad9fab6f42edf3805420080ec.tar.bz2
android_packages_apps_Snap-4072ab93a57bcb2ad9fab6f42edf3805420080ec.zip
Add prominent highlights for touch feedback.
Mimic the system UI to fade out highlights on touch releases. bug:6145331 bug:5379176 Change-Id: I44c9245a926b2c5eb46b28d494c6393ba7f0c30c
Diffstat (limited to 'src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java')
-rw-r--r--src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java26
1 files changed, 21 insertions, 5 deletions
diff --git a/src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java b/src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java
index d20c387ae..b0e615392 100644
--- a/src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java
+++ b/src/com/android/gallery3d/ui/AlbumSetSlotRenderer.java
@@ -39,6 +39,7 @@ public class AlbumSetSlotRenderer extends AbstractSlotRenderer {
private SlotView mSlotView;
private int mPressedIndex = -1;
+ private boolean mAnimatePressedUp;
private Path mHighlightItemPath = null;
private boolean mInSelectionMode;
@@ -72,6 +73,12 @@ public class AlbumSetSlotRenderer extends AbstractSlotRenderer {
mSlotView.invalidate();
}
+ public void setPressedUp() {
+ if (mPressedIndex == -1) return;
+ mAnimatePressedUp = true;
+ mSlotView.invalidate();
+ }
+
public void setHighlightItemPath(Path path) {
if (mHighlightItemPath == path) return;
mHighlightItemPath = path;
@@ -111,15 +118,24 @@ public class AlbumSetSlotRenderer extends AbstractSlotRenderer {
protected int renderOverlay(
GLCanvas canvas, int index, AlbumSetEntry entry, int width, int height) {
- Path path = entry.setPath;
+ int renderRequestFlags = 0;
if (mPressedIndex == index) {
- drawPressedFrame(canvas, width, height);
- } else if ((path != null) && (mHighlightItemPath == path)) {
+ if (mAnimatePressedUp) {
+ drawPressedUpFrame(canvas, width, height);
+ renderRequestFlags |= SlotView.RENDER_MORE_FRAME;
+ if (isPressedUpFrameFinished()) {
+ mAnimatePressedUp = false;
+ mPressedIndex = -1;
+ }
+ } else {
+ drawPressedFrame(canvas, width, height);
+ }
+ } else if ((mHighlightItemPath != null) && (mHighlightItemPath == entry.setPath)) {
drawSelectedFrame(canvas, width, height);
- } else if (mInSelectionMode && mSelectionManager.isItemSelected(path)) {
+ } else if (mInSelectionMode && mSelectionManager.isItemSelected(entry.setPath)) {
drawSelectedFrame(canvas, width, height);
}
- return 0;
+ return renderRequestFlags;
}
protected int renderContent(