Merge "Move async package to com.android.camera" into ub-camera-haleakala
diff --git a/src/com/android/camera/ButtonManager.java b/src/com/android/camera/ButtonManager.java
index 3250c01..414a69b 100644
--- a/src/com/android/camera/ButtonManager.java
+++ b/src/com/android/camera/ButtonManager.java
@@ -358,6 +358,7 @@
                 throw new IllegalArgumentException("button not known by id=" + buttonId);
         }
 
+        showButton(buttonId);
         enableButton(buttonId);
     }
 
@@ -437,13 +438,6 @@
             }
         }
         button.setTag(R.string.tag_enabled_id, null);
-
-        if (button.getVisibility() != View.VISIBLE) {
-            button.setVisibility(View.VISIBLE);
-            if (mListener != null) {
-                mListener.onButtonVisibilityChanged(this, buttonId);
-            }
-        }
     }
 
     /**
@@ -458,13 +452,6 @@
             }
         }
         button.setTag(R.string.tag_enabled_id, buttonId);
-
-        if (button.getVisibility() != View.VISIBLE) {
-            button.setVisibility(View.VISIBLE);
-            if (mListener != null) {
-                mListener.onButtonVisibilityChanged(this, buttonId);
-            }
-        }
     }
 
     /**
@@ -509,6 +496,25 @@
         }
     }
 
+    /**
+     * Show a button by id.
+     */
+    public void showButton(int buttonId) {
+        View button;
+        try {
+            button = getButtonOrError(buttonId);
+        } catch (IllegalArgumentException e) {
+            button = getImageButtonOrError(buttonId);
+        }
+        if (button.getVisibility() != View.VISIBLE) {
+            button.setVisibility(View.VISIBLE);
+            if (mListener != null) {
+                mListener.onButtonVisibilityChanged(this, buttonId);
+            }
+        }
+    }
+
+
     public void setToInitialState() {
         mModeOptions.setMainBar(ModeOptions.BAR_STANDARD);
     }
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java
index b3ffdcc..f6cf732 100644
--- a/src/com/android/camera/PhotoModule.java
+++ b/src/com/android/camera/PhotoModule.java
@@ -1335,11 +1335,17 @@
         CameraCapabilities.Stringifier stringifier = mCameraCapabilities.getStringifier();
         SettingsManager settingsManager = mActivity.getSettingsManager();
         if (!CameraCapabilities.FlashMode.NO_FLASH.equals(flashMode)) {
+            String flashModeString = stringifier.stringify(flashMode);
+            Log.v(TAG, "override flash setting to: " + flashModeString);
             settingsManager.set(mAppController.getCameraScope(), Keys.KEY_FLASH_MODE,
-                    stringifier.stringify(flashMode));
+                    flashModeString);
+        } else {
+            Log.v(TAG, "skip setting flash mode on override due to NO_FLASH");
         }
+        String focusModeString = stringifier.stringify(focusMode);
+        Log.v(TAG, "override focus setting to: " + focusModeString);
         settingsManager.set(mAppController.getCameraScope(), Keys.KEY_FOCUS_MODE,
-                stringifier.stringify(focusMode));
+                focusModeString);
     }
 
     @Override