summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d/app/PhotoPage.java
diff options
context:
space:
mode:
authorRay Chen <raychen@google.com>2011-08-24 11:40:04 +0800
committerRay Chen <raychen@google.com>2011-08-26 20:20:48 +0800
commit327eeb846fa6b2649db90fc4e5708f7fdcbbfaa2 (patch)
tree36c467e95a6ccd0d704fb073310c7fbac0fb2721 /src/com/android/gallery3d/app/PhotoPage.java
parentca69a7dd02057818b7d3d61979561958d6109758 (diff)
downloadandroid_packages_apps_Snap-327eeb846fa6b2649db90fc4e5708f7fdcbbfaa2.tar.gz
android_packages_apps_Snap-327eeb846fa6b2649db90fc4e5708f7fdcbbfaa2.tar.bz2
android_packages_apps_Snap-327eeb846fa6b2649db90fc4e5708f7fdcbbfaa2.zip
Fix 5133608 [UI] Details should be displayed as a system dialog in phone UI
Fix 5132798 [UI] Details popup on tablet is incorrectly placed and should not have x icon to close Fix 5199822 Long press and select "detail" shows details of another item Change-Id: I0e992ded8a154edb1c7a81b75d0461d5bf309f31
Diffstat (limited to 'src/com/android/gallery3d/app/PhotoPage.java')
-rw-r--r--src/com/android/gallery3d/app/PhotoPage.java41
1 files changed, 20 insertions, 21 deletions
diff --git a/src/com/android/gallery3d/app/PhotoPage.java b/src/com/android/gallery3d/app/PhotoPage.java
index f28eb221d..4fbffb55a 100644
--- a/src/com/android/gallery3d/app/PhotoPage.java
+++ b/src/com/android/gallery3d/app/PhotoPage.java
@@ -25,9 +25,9 @@ import com.android.gallery3d.data.MediaSet;
import com.android.gallery3d.data.MtpDevice;
import com.android.gallery3d.data.Path;
import com.android.gallery3d.picasasource.PicasaSource;
-import com.android.gallery3d.ui.DetailsWindow;
-import com.android.gallery3d.ui.DetailsWindow.CloseListener;
-import com.android.gallery3d.ui.DetailsWindow.DetailsSource;
+import com.android.gallery3d.ui.DetailsHelper;
+import com.android.gallery3d.ui.DetailsHelper.CloseListener;
+import com.android.gallery3d.ui.DetailsHelper.DetailsSource;
import com.android.gallery3d.ui.FilmStripView;
import com.android.gallery3d.ui.GLCanvas;
import com.android.gallery3d.ui.GLView;
@@ -82,7 +82,7 @@ public class PhotoPage extends ActivityState
private PhotoView mPhotoView;
private PhotoPage.Model mModel;
private FilmStripView mFilmStripView;
- private DetailsWindow mDetailsWindow;
+ private DetailsHelper mDetailsHelper;
private boolean mShowDetails;
// mMediaSet could be null if there is no KEY_MEDIA_SET_PATH supplied.
@@ -141,12 +141,8 @@ public class PhotoPage extends ActivityState
right - left, bottom - top);
}
if (mShowDetails) {
- mDetailsWindow.measure(
- MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
- int width = mDetailsWindow.getMeasuredWidth();
- int viewTop = GalleryActionBar.getHeight((Activity) mActivity);
- mDetailsWindow.layout(
- 0, viewTop, width, bottom - top - filmStripHeight);
+ mDetailsHelper.layout(left, GalleryActionBar.getHeight((Activity) mActivity),
+ right, bottom);
}
}
};
@@ -257,7 +253,7 @@ public class PhotoPage extends ActivityState
if (mCurrentPhoto == null) return;
updateMenuOperations();
if (mShowDetails) {
- mDetailsWindow.reloadDetails(mModel.getCurrentIndex());
+ mDetailsHelper.reloadDetails(mModel.getCurrentIndex());
}
String title = photo.getName();
if (title != null) mActionBar.setTitle(title);
@@ -441,22 +437,21 @@ public class PhotoPage extends ActivityState
private void hideDetails() {
mShowDetails = false;
- mDetailsWindow.hide();
+ mDetailsHelper.hide();
}
private void showDetails(int index) {
mShowDetails = true;
- if (mDetailsWindow == null) {
- mDetailsWindow = new DetailsWindow(mActivity, new MyDetailsSource());
- mDetailsWindow.setCloseListener(new CloseListener() {
+ if (mDetailsHelper == null) {
+ mDetailsHelper = new DetailsHelper(mActivity, mRootPane, new MyDetailsSource());
+ mDetailsHelper.setCloseListener(new CloseListener() {
public void onClose() {
hideDetails();
}
});
- mRootPane.addComponent(mDetailsWindow);
}
- mDetailsWindow.reloadDetails(index);
- mDetailsWindow.show();
+ mDetailsHelper.reloadDetails(index);
+ mDetailsHelper.show();
}
public void onSingleTapUp(int x, int y) {
@@ -541,9 +536,7 @@ public class PhotoPage extends ActivityState
if (mFilmStripView != null) {
mFilmStripView.pause();
}
- if (mDetailsWindow != null) {
- mDetailsWindow.pause();
- }
+ DetailsHelper.pause();
mPhotoView.pause();
mModel.pause();
mHandler.removeMessages(MSG_HIDE_BARS);
@@ -568,6 +561,7 @@ public class PhotoPage extends ActivityState
}
private class MyDetailsSource implements DetailsSource {
+ private int mIndex;
public MediaDetails getDetails() {
return mModel.getCurrentMediaItem().getDetails();
}
@@ -575,7 +569,12 @@ public class PhotoPage extends ActivityState
return mMediaSet != null ? mMediaSet.getMediaItemCount() : 1;
}
public int findIndex(int indexHint) {
+ mIndex = indexHint;
return indexHint;
}
+
+ public int getIndex() {
+ return mIndex;
+ }
}
}