OSDN Git Service

Fix the picture size settings doesn't get initialized issue.
authorOwen Lin <owenlin@google.com>
Thu, 18 Mar 2010 02:49:20 +0000 (10:49 +0800)
committerOwen Lin <owenlin@google.com>
Fri, 19 Mar 2010 03:17:50 +0000 (11:17 +0800)
Bug: 2524062
Change-Id: Ia1062a23572dce7acc00a6877b92d088bc62aae6

src/com/android/camera/Camera.java
src/com/android/camera/VideoCamera.java
src/com/android/camera/ui/HeadUpDisplay.java

index d950017..e0acec5 100644 (file)
@@ -2175,7 +2175,7 @@ public class Camera extends NoSearchActivity implements View.OnClickListener,
         if (mPausing) return;
         Runnable runnable = new Runnable() {
             public void run() {
-                mHeadUpDisplay.restorePreferences();
+                mHeadUpDisplay.restorePreferences(mParameters);
             }
         };
         MenuHelper.confirmAction(this,
index 6d3a1e7..5e2724b 100644 (file)
@@ -1479,7 +1479,7 @@ public class VideoCamera extends NoSearchActivity
     private void onRestorePreferencesClicked() {
         Runnable runnable = new Runnable() {
             public void run() {
-                mHeadUpDisplay.restorePreferences();
+                mHeadUpDisplay.restorePreferences(mParameters);
             }
         };
         MenuHelper.confirmAction(this,
index d3a9566..d441efe 100644 (file)
@@ -6,6 +6,7 @@ import android.content.SharedPreferences;
 import android.content.SharedPreferences.Editor;
 import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
 import android.graphics.Rect;
+import android.hardware.Camera.Parameters;
 import android.os.Handler;
 import android.os.HandlerThread;
 import android.os.Message;
@@ -391,7 +392,7 @@ public class HeadUpDisplay extends GLView {
         mListener = listener;
     }
 
-    public void restorePreferences() {
+    public void restorePreferences(final Parameters param) {
         getGLRootView().runInGLThread(new Runnable() {
             public void run() {
                 OnSharedPreferenceChangeListener l =
@@ -400,12 +401,14 @@ public class HeadUpDisplay extends GLView {
                 // change bunch of preferences. We can handle them with one
                 // onSharedPreferencesChanged();
                 mSharedPrefs.unregisterOnSharedPreferenceChangeListener(l);
+                Context context = getGLRootView().getContext();
                 synchronized (mSharedPrefs) {
                     Editor editor = mSharedPrefs.edit();
                     editor.clear();
                     editor.commit();
                 }
                 CameraSettings.upgradePreferences(mSharedPrefs);
+                CameraSettings.initialCameraPictureSize(context, param);
                 reloadPreferences();
                 if (mListener != null) {
                     mListener.onSharedPreferencesChanged();