summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicolasroard <nicolasroard@google.com>2012-10-21 14:53:03 -0700
committernicolasroard <nicolasroard@google.com>2012-10-21 15:14:54 -0700
commit4d276f338bbdc53f8a3b4806265bc26c7fe0ea7c (patch)
tree02069cc2c99f6d8ffc80620793ba0d33cf0b9b47
parent267c4c6a513671441031a9c21839995aecc4fc52 (diff)
downloadandroid_packages_apps_Gallery2-4d276f338bbdc53f8a3b4806265bc26c7fe0ea7c.tar.gz
android_packages_apps_Gallery2-4d276f338bbdc53f8a3b4806265bc26c7fe0ea7c.tar.bz2
android_packages_apps_Gallery2-4d276f338bbdc53f8a3b4806265bc26c7fe0ea7c.zip
Only translate the main panel if we have to.
bug:7386882 Change-Id: Ib670eb4e513f0bbebd3ecca052fe27180dcf5fdc
-rw-r--r--res/layout/filtershow_activity.xml91
-rw-r--r--src/com/android/gallery3d/filtershow/FilterShowActivity.java17
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageShow.java4
-rw-r--r--src/com/android/gallery3d/filtershow/imageshow/ImageSlave.java6
4 files changed, 71 insertions, 47 deletions
diff --git a/res/layout/filtershow_activity.xml b/res/layout/filtershow_activity.xml
index e07cb1cc7..9ccb75532 100644
--- a/res/layout/filtershow_activity.xml
+++ b/res/layout/filtershow_activity.xml
@@ -18,6 +18,7 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
+ android:id="@+id/mainView"
android:background="@color/background_screen" >
<LinearLayout
@@ -48,51 +49,6 @@
</LinearLayout>
<LinearLayout
- android:id="@+id/historyPanel"
- android:layout_width="200dip"
- android:layout_height="match_parent"
- android:layout_gravity="right"
- android:orientation="vertical"
- android:visibility="invisible" >
-
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:background="@android:color/transparent"
- android:gravity="center"
- android:padding="2dip"
- android:text="@string/history"
- android:textColor="@android:color/white"
- android:textSize="24sp"
- android:textStyle="bold" />
-
- <ListView
- android:id="@+id/operationsList"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_weight="1" >
- </ListView>
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="horizontal" >
-
- <Button
- android:id="@+id/resetOperationsButton"
- style="@style/FilterShowHistoryButton"
- android:gravity="center"
- android:text="@string/reset" />
-
- <Button
- android:id="@+id/saveOperationsButton"
- style="@style/FilterShowHistoryButton"
- android:text="@string/save"
- android:visibility="gone" />
- </LinearLayout>
- </LinearLayout>
-
- <LinearLayout
android:id="@+id/mainPanel"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -458,4 +414,49 @@
</com.android.gallery3d.filtershow.CenteredLinearLayout>
</LinearLayout>
+ <LinearLayout
+ android:id="@+id/historyPanel"
+ android:layout_width="200dip"
+ android:layout_height="match_parent"
+ android:layout_gravity="right"
+ android:orientation="vertical"
+ android:visibility="invisible" >
+
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:background="@android:color/transparent"
+ android:gravity="center"
+ android:padding="2dip"
+ android:text="@string/history"
+ android:textColor="@android:color/white"
+ android:textSize="24sp"
+ android:textStyle="bold" />
+
+ <ListView
+ android:id="@+id/operationsList"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_weight="1" >
+ </ListView>
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal" >
+
+ <Button
+ android:id="@+id/resetOperationsButton"
+ style="@style/FilterShowHistoryButton"
+ android:gravity="center"
+ android:text="@string/reset" />
+
+ <Button
+ android:id="@+id/saveOperationsButton"
+ style="@style/FilterShowHistoryButton"
+ android:text="@string/save"
+ android:visibility="gone" />
+ </LinearLayout>
+ </LinearLayout>
+
</FrameLayout>
diff --git a/src/com/android/gallery3d/filtershow/FilterShowActivity.java b/src/com/android/gallery3d/filtershow/FilterShowActivity.java
index 2cdc22e94..cac8aadd6 100644
--- a/src/com/android/gallery3d/filtershow/FilterShowActivity.java
+++ b/src/com/android/gallery3d/filtershow/FilterShowActivity.java
@@ -353,6 +353,17 @@ public class FilterShowActivity extends Activity implements OnItemClickListener,
}
}
+ private int translateMainPanel(View viewPanel) {
+ int accessoryPanelWidth = viewPanel.getWidth();
+ int mainViewWidth = findViewById(R.id.mainView).getWidth();
+ int mainPanelWidth = mImageShow.getDisplayedImageBounds().width();
+ int leftOver = mainViewWidth - mainPanelWidth - accessoryPanelWidth;
+ if (leftOver < 0) {
+ return -accessoryPanelWidth;
+ }
+ return 0;
+ }
+
private int getScreenImageSize() {
DisplayMetrics metrics = new DisplayMetrics();
Display display = getWindowManager().getDefaultDisplay();
@@ -666,9 +677,10 @@ public class FilterShowActivity extends Activity implements OnItemClickListener,
mShowingHistoryPanel = false;
}
+ int translate = translateMainPanel(viewList);
if (!mShowingImageStatePanel) {
mShowingImageStatePanel = true;
- view.animate().setDuration(200).x(-viewList.getWidth())
+ view.animate().setDuration(200).x(translate)
.withLayer().withEndAction(new Runnable() {
@Override
public void run() {
@@ -699,9 +711,10 @@ public class FilterShowActivity extends Activity implements OnItemClickListener,
mShowingImageStatePanel = false;
}
+ int translate = translateMainPanel(viewList);
if (!mShowingHistoryPanel) {
mShowingHistoryPanel = true;
- view.animate().setDuration(200).x(-viewList.getWidth())
+ view.animate().setDuration(200).x(translate)
.withLayer().withEndAction(new Runnable() {
@Override
public void run() {
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
index 61f998d47..40da5725b 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java
@@ -312,6 +312,10 @@ public class ImageShow extends View implements OnGestureListener,
return dst;
}
+ public Rect getDisplayedImageBounds() {
+ return mImageBounds;
+ }
+
public ImagePreset getImagePreset() {
return mImagePreset;
}
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageSlave.java b/src/com/android/gallery3d/filtershow/imageshow/ImageSlave.java
index c1fb0e471..ba4da91c9 100644
--- a/src/com/android/gallery3d/filtershow/imageshow/ImageSlave.java
+++ b/src/com/android/gallery3d/filtershow/imageshow/ImageSlave.java
@@ -18,6 +18,7 @@ package com.android.gallery3d.filtershow.imageshow;
import android.content.Context;
import android.graphics.Canvas;
+import android.graphics.Rect;
import android.util.AttributeSet;
import com.android.gallery3d.filtershow.HistoryAdapter;
@@ -55,6 +56,11 @@ public class ImageSlave extends ImageShow {
}
@Override
+ public Rect getDisplayedImageBounds() {
+ return mMasterImageShow.getDisplayedImageBounds();
+ }
+
+ @Override
public void setImagePreset(ImagePreset preset, boolean addToHistory) {
mMasterImageShow.setImagePreset(preset, addToHistory);
}