OSDN Git Service

fix menu indicator inconsistency
authorJohn Hoford <hoford@google.com>
Mon, 26 Aug 2013 21:39:10 +0000 (14:39 -0700)
committerJohn Hoford <hoford@google.com>
Mon, 26 Aug 2013 21:39:10 +0000 (14:39 -0700)
bug:10492779
Change-Id: I5746bb2e8066ec985423a9d972d44593653d3c31

src/com/android/gallery3d/filtershow/editors/Editor.java
src/com/android/gallery3d/filtershow/editors/EditorChanSat.java
src/com/android/gallery3d/filtershow/editors/EditorCurves.java
src/com/android/gallery3d/filtershow/editors/EditorDraw.java
src/com/android/gallery3d/filtershow/editors/EditorGrad.java

index e326663..fb04fb3 100644 (file)
@@ -19,6 +19,7 @@ package com.android.gallery3d.filtershow.editors;
 import android.content.Context;
 import android.content.res.Configuration;
 import android.util.AttributeSet;
+import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.Menu;
 import android.view.MenuItem;
@@ -96,12 +97,11 @@ public class Editor implements OnSeekBarChangeListener, SwapButton.SwapButtonLis
         mFilterTitle = stateButton;
         mButton = editTitle;
         MasterImage.getImage().resetGeometryImages(false);
-        setMenuIcon(true);
         setUtilityPanelUI(actionButton, editControl);
     }
 
     public boolean showsPopupIndicator() {
-        return true;
+        return false;
     }
 
     /**
@@ -127,12 +127,7 @@ public class Editor implements OnSeekBarChangeListener, SwapButton.SwapButtonLis
         }
 
         if (mButton != null) {
-            if (showsPopupIndicator()) {
-                mButton.setCompoundDrawablesRelativeWithIntrinsicBounds(0, 0,
-                        R.drawable.filtershow_menu_marker, 0);
-            } else {
-                mButton.setCompoundDrawablesRelativeWithIntrinsicBounds(0, 0, 0, 0);
-            }
+            setMenuIcon(showsPopupIndicator());
         }
     }
 
@@ -282,7 +277,7 @@ public class Editor implements OnSeekBarChangeListener, SwapButton.SwapButtonLis
     }
 
     public void openUtilityPanel(LinearLayout mAccessoryViewList) {
-        setMenuIcon(false);
+        setMenuIcon(showsPopupIndicator());
         if (mImageShow != null) {
             mImageShow.openUtilityPanel(mAccessoryViewList);
         }
index 0069aae..e806a5a 100644 (file)
@@ -122,6 +122,8 @@ public class EditorChanSat extends ParametricEditor implements OnSeekBarChangeLi
             FilterChanSatRepresentation csrep = getChanSatRep();
             String menuString = mContext.getString(mMenuStrings[0]);
             switchToMode(csrep, FilterChanSatRepresentation.MODE_MASTER, menuString);
+        } else {
+            mButton.setText(mContext.getString(R.string.saturation));
         }
     }
 
index c9f57f4..35ac359 100644 (file)
@@ -17,6 +17,7 @@
 package com.android.gallery3d.filtershow.editors;
 
 import android.content.Context;
+import android.view.View;
 import android.widget.FrameLayout;
 
 import com.android.gallery3d.R;
@@ -39,6 +40,11 @@ public class EditorCurves extends Editor {
     }
 
     @Override
+    public boolean showsPopupIndicator() {
+        return true;
+    }
+
+    @Override
     public void createEditor(Context context, FrameLayout frameLayout) {
         super.createEditor(context, frameLayout);
         mView = mImageShow = mImageCurves = new ImageCurves(context);
@@ -54,6 +60,11 @@ public class EditorCurves extends Editor {
             mImageCurves.setFilterDrawRepresentation(drawRep);
         }
     }
+    @Override
+    public void setUtilityPanelUI(View actionButton, View editControl) {
+        super.setUtilityPanelUI(actionButton,editControl);
+        setMenuIcon(true);
+    }
 
     @Override
     public boolean showsSeekBar() {
index 4886821..abd81c5 100644 (file)
@@ -130,14 +130,18 @@ public class EditorDraw extends ParametricEditor implements FilterView {
     @Override
     public void openUtilityPanel(final LinearLayout accessoryViewList) {
         Button view = (Button) accessoryViewList.findViewById(R.id.applyEffect);
-        view.setText(mContext.getString(R.string.draw_hue));
-        view.setOnClickListener(new OnClickListener() {
+        if (useCompact(mContext)) {
+            view.setText(mContext.getString(R.string.draw_hue));
+            view.setOnClickListener(new OnClickListener() {
 
-            @Override
-            public void onClick(View arg0) {
-                showPopupMenu(accessoryViewList);
-            }
-        });
+                @Override
+                public void onClick(View arg0) {
+                    showPopupMenu(accessoryViewList);
+                }
+            });
+        } else {
+            view.setText(mContext.getString(R.string.imageDraw));
+        }
     }
 
     @Override
@@ -224,6 +228,7 @@ public class EditorDraw extends ParametricEditor implements FilterView {
                 R.layout.filtershow_draw_ui, (ViewGroup) editControl, true);
 
         mTabletUI = new EditorDrawTabletUI(this, mContext, lp);
+        setMenuIcon(false);
 
     }
 
index d855851..4be435f 100644 (file)
@@ -111,16 +111,20 @@ public class EditorGrad extends ParametricEditor
     @Override
     public void openUtilityPanel(final LinearLayout accessoryViewList) {
         Button view = (Button) accessoryViewList.findViewById(R.id.applyEffect);
-        view.setText(mContext.getString(R.string.editor_grad_brightness));
-        view.setOnClickListener(new OnClickListener() {
-            @Override
-            public void onClick(View arg0) {
-                showPopupMenu(accessoryViewList);
-            }
-        });
+        if (useCompact(mContext)) {
+            view.setText(mContext.getString(R.string.editor_grad_brightness));
+            view.setOnClickListener(new OnClickListener() {
+                @Override
+                public void onClick(View arg0) {
+                    showPopupMenu(accessoryViewList);
+                }
+            });
 
-        setUpPopupMenu(view);
-        setEffectName();
+            setUpPopupMenu(view);
+            setEffectName();
+        } else {
+            view.setText(mContext.getString(R.string.grad));
+        }
     }
 
     private void updateMenuItems(FilterGradRepresentation rep) {
@@ -167,6 +171,7 @@ public class EditorGrad extends ParametricEditor
                 fireRightAction();
             }
         });
+        setMenuIcon(false);
     }
 
     public void updateParameters() {
@@ -206,13 +211,28 @@ public class EditorGrad extends ParametricEditor
             FilterGradRepresentation rep = getGradRepresentation();
             int value = progress + mMin;
             rep.setParameter(mMode, value);
-            mSliderMode = mMode;
-            mEffectName = "";
+            if (mSliderMode != mMode) {
+                mSliderMode = mMode;
+                mEffectName = mContext.getResources().getString(getModeNameid(mMode));
+                mEffectName = mEffectName.toUpperCase();
+            }
             mTextView.setText(Integer.toString(value));
             mView.invalidate();
             commitLocalRepresentation();
         }
 
+        private int getModeNameid(int mode) {
+            switch (mode) {
+                case MODE_CONTRAST:
+                    return R.string.editor_grad_contrast;
+                case MODE_BRIGHTNESS:
+                    return R.string.editor_grad_brightness;
+                case MODE_SATURATION:
+                    return R.string.editor_grad_saturation;
+            }
+            return 0;
+        }
+
         @Override
         public void onStartTrackingTouch(SeekBar seekBar) {