diff options
author | junjiez <junjiez@codeaurora.org> | 2018-03-22 15:20:33 +0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-03-25 18:47:27 -0700 |
commit | 96e4a08f12256adf2aef2a4368ab7200e667a054 (patch) | |
tree | 6057c6ed5c89b4e92fb2fb50104a877454650169 /src/com/android/camera/ui | |
parent | 58eb1ccc8fde3862b72125680e527c4208d73c35 (diff) | |
download | android_packages_apps_Snap-96e4a08f12256adf2aef2a4368ab7200e667a054.tar.gz android_packages_apps_Snap-96e4a08f12256adf2aef2a4368ab7200e667a054.tar.bz2 android_packages_apps_Snap-96e4a08f12256adf2aef2a4368ab7200e667a054.zip |
SnapdragonCamera:Fix manual focus
set the AF mode when turn on and turn
off manual focus, don't unlock focus
when capture in manual focus mode.
Change-Id: I007c9235c67248ba6850e95bc3ab267703a70f06
CRs-Fixed: 2208004
Diffstat (limited to 'src/com/android/camera/ui')
-rwxr-xr-x | src/com/android/camera/ui/OneUICameraControls.java | 1 | ||||
-rwxr-xr-x | src/com/android/camera/ui/ProMode.java | 17 |
2 files changed, 13 insertions, 5 deletions
diff --git a/src/com/android/camera/ui/OneUICameraControls.java b/src/com/android/camera/ui/OneUICameraControls.java index 504cb2679..54e4b5bb7 100755 --- a/src/com/android/camera/ui/OneUICameraControls.java +++ b/src/com/android/camera/ui/OneUICameraControls.java @@ -38,6 +38,7 @@ import android.widget.SeekBar; import android.widget.TextView; import com.android.camera.CaptureModule; +import com.android.camera.SettingsManager; import com.android.camera.Storage; import com.android.camera.imageprocessor.filter.BeautificationFilter; diff --git a/src/com/android/camera/ui/ProMode.java b/src/com/android/camera/ui/ProMode.java index df1d19edb..99182e242 100755 --- a/src/com/android/camera/ui/ProMode.java +++ b/src/com/android/camera/ui/ProMode.java @@ -80,7 +80,7 @@ public class ProMode extends View { private int mMode = NO_MODE; private Context mContext; private ViewGroup mParent; - private float minFocus; + private float minFocus = -1; private OneUICameraControls mUI; private int mWidth; private int mHeight; @@ -191,7 +191,13 @@ public class ProMode extends View { } public void setMode(int mode) { + int lastMode = mMode; mMode = mode; + if (lastMode == MANUAL_MODE && mode != MANUAL_MODE) { + //set key focus value to notify capture module to reset focus mode + mSettingsManager.setFocusDistance(SettingsManager.KEY_FOCUS_DISTANCE, true, + -1f, -1f); + } removeViews(); if (mMode == NO_MODE) { setVisibility(INVISIBLE); @@ -205,7 +211,7 @@ public class ProMode extends View { minFocus = mSettingsManager .getMinimumFocusDistance(mSettingsManager.getCurrentCameraId()); float value = mSettingsManager.getFocusValue(SettingsManager.KEY_FOCUS_DISTANCE); - setSlider(value); + setSlider(value,true); int stride = mCurveRight - mCurveLeft; for (int i = 0; i < 2; i++) { TextView v = new TextView(mContext); @@ -291,9 +297,10 @@ public class ProMode extends View { invalidate(); } - public void setSlider(float slider) { + public void setSlider(float slider,boolean forceNotify) { mSlider = slider; - mSettingsManager.setFocusDistance(SettingsManager.KEY_FOCUS_DISTANCE, mSlider, minFocus); + mSettingsManager.setFocusDistance(SettingsManager.KEY_FOCUS_DISTANCE, forceNotify, + mSlider, minFocus); mUI.updateProModeText(mMode, "Manual"); invalidate(); } @@ -342,7 +349,7 @@ public class ProMode extends View { if (mMode == MANUAL_MODE) { float slider = getSlider(event.getX(), event.getY()); if (slider >= 0) { - setSlider(slider); + setSlider(slider,false); } } else { int idx = findButton(event.getX(), event.getY()); |