aboutsummaryrefslogtreecommitdiff
path: root/src/org/linaro/connect/ImageViewActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/linaro/connect/ImageViewActivity.java')
-rw-r--r--src/org/linaro/connect/ImageViewActivity.java35
1 files changed, 31 insertions, 4 deletions
diff --git a/src/org/linaro/connect/ImageViewActivity.java b/src/org/linaro/connect/ImageViewActivity.java
index f6b3721..94411eb 100644
--- a/src/org/linaro/connect/ImageViewActivity.java
+++ b/src/org/linaro/connect/ImageViewActivity.java
@@ -3,6 +3,7 @@ package org.linaro.connect;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
+import org.linaro.connect.FlingListener.FlingEvent;
import android.app.Activity;
import android.content.Intent;
@@ -25,6 +26,8 @@ public class ImageViewActivity extends Activity {
private ImageButton mBack;
private ImageButton mForward;
+ private FlingListener mFlingListener;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
@@ -51,6 +54,8 @@ public class ImageViewActivity extends Activity {
}
});
+ setFlingListener(findViewById(R.id.image_view_id));
+
Intent i = getIntent();
String json = i.getStringExtra("json");
JSONObject jso = JSONUtils.toJSON(json);
@@ -64,6 +69,20 @@ public class ImageViewActivity extends Activity {
}
}
+ private void setFlingListener(View v) {
+ mFlingListener = new FlingListener(v, new FlingEvent() {
+ @Override
+ public void onFlingForward() {
+ setSelected(mSelected+1);
+ }
+
+ @Override
+ public void onFlingBack() {
+ setSelected(mSelected-1);
+ }
+ });
+ }
+
private void setSelected(int pos) {
disableNavigation();
@@ -103,6 +122,8 @@ public class ImageViewActivity extends Activity {
mForward.setEnabled(false);
mBack.setVisibility(View.INVISIBLE);
mForward.setVisibility(View.INVISIBLE);
+ mFlingListener.enableForward(false);
+ mFlingListener.enableBack(false);
}
private void enableNavigation() {
@@ -110,15 +131,21 @@ public class ImageViewActivity extends Activity {
mBack.setEnabled(true);
mForward.setEnabled(true);
- if( mSelected < 1 )
+ if( mSelected < 1 ) {
mBack.setVisibility(View.INVISIBLE);
- else
+ mFlingListener.enableBack(false);
+ } else {
mBack.setVisibility(View.VISIBLE);
+ mFlingListener.enableBack(true);
+ }
- if( mSelected >= getNumImages()-1 )
+ if( mSelected >= getNumImages()-1 ) {
mForward.setVisibility(View.INVISIBLE);
- else
+ mFlingListener.enableForward(false);
+ } else {
mForward.setVisibility(View.VISIBLE);
+ mFlingListener.enableForward(true);
+ }
}
private class DownloadTask extends AsyncTask<JSONImageItem, Void, Drawable> {