diff --git a/app/src/main/java/com/github/ma1co/pmcademo/app/BaseActivity.java b/app/src/main/java/com/github/ma1co/pmcademo/app/BaseActivity.java index 155ed8a..fc4c154 100644 --- a/app/src/main/java/com/github/ma1co/pmcademo/app/BaseActivity.java +++ b/app/src/main/java/com/github/ma1co/pmcademo/app/BaseActivity.java @@ -3,6 +3,8 @@ import android.app.Activity; import android.content.Intent; import android.view.KeyEvent; + +import com.github.ma1co.openmemories.framework.DeviceInfo; import com.sony.scalar.hardware.avio.DisplayManager; import com.sony.scalar.sysutil.ScalarInput; import com.sony.scalar.sysutil.didep.Gpelibrary; @@ -216,4 +218,8 @@ protected void notifyAppInfo() { public DisplayManager getDisplayManager() { return displayManager; } + + public DeviceInfo getDeviceInfo() { + return DeviceInfo.getInstance(); + } } diff --git a/app/src/main/java/com/obsidium/bettermanual/ManualActivity.java b/app/src/main/java/com/obsidium/bettermanual/ManualActivity.java index 15a6e5a..dae0fc9 100644 --- a/app/src/main/java/com/obsidium/bettermanual/ManualActivity.java +++ b/app/src/main/java/com/obsidium/bettermanual/ManualActivity.java @@ -126,7 +126,7 @@ else if (m_bracketActive) private int m_curPreviewMagnificationMaxPos; private PreviewNavView m_previewNavView; - enum DialMode { shutter, aperture, iso, exposure, + enum DialMode { shutter, aperture, iso, exposure, mode, timelapseSetInterval, timelapseSetPicCount, bracketSetStep, bracketSetPicCount } @@ -224,6 +224,13 @@ protected void onCreate(Bundle savedInstanceState) setDialMode(DialMode.shutter); m_prefs = new Preferences(this); + + // Hide timelapse and bracketing icons for non-touchscreen devices + if (getDeviceInfo().getModel().compareTo("ILCE-5100") != 0) + { + m_ivBracket.setVisibility(View.GONE); + m_ivTimelapse.setVisibility(View.GONE); + } } private class SurfaceSwipeTouchListener extends OnSwipeTouchListener @@ -1561,6 +1568,10 @@ private void setDialMode(DialMode newMode) m_tvAperture.setTextColor(newMode == DialMode.aperture ? Color.GREEN : Color.WHITE); m_tvISO.setTextColor(newMode == DialMode.iso ? Color.GREEN : Color.WHITE); m_tvExposureCompensation.setTextColor(newMode == DialMode.exposure ? Color.GREEN : Color.WHITE); + if (newMode == DialMode.mode) + m_ivMode.setColorFilter(Color.argb(255, 0, 255, 0)); + else + m_ivMode.setColorFilter(null); } private void movePreviewVertical(int delta) @@ -1660,6 +1671,11 @@ else if (m_dialMode == DialMode.bracketSetPicCount) startBracketCountdown(); return true; } + else if (m_dialMode == DialMode.mode) + { + toggleSceneMode(); + return true; + } return false; } @@ -1704,6 +1720,9 @@ protected boolean onDownKeyUp() setDialMode(DialMode.exposure); break; case exposure: + setDialMode(DialMode.mode); + break; + case mode: setDialMode(DialMode.shutter); break; }