From: MRSa Date: Sat, 19 Oct 2019 12:57:14 +0000 (+0900) Subject: Olympusのスモール取得サイズを設定可能にする。 X-Git-Url: http://git.osdn.net/view?p=gokigen%2FPKRemote.git;a=commitdiff_plain;h=91c79179084a403390568466e316faa6f88c3761 Olympusのスモール取得サイズを設定可能にする。 --- diff --git a/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/OlympusPenInterfaceProvider.java b/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/OlympusPenInterfaceProvider.java index 97d85d7..ccd6f3e 100644 --- a/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/OlympusPenInterfaceProvider.java +++ b/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/OlympusPenInterfaceProvider.java @@ -71,7 +71,7 @@ public class OlympusPenInterfaceProvider implements IOlympusPenInterfaceProvider //this.provider = provider; olympusPenConnection = new OlympusPenConnection(context, provider); buttonControl = new OlympusPenButtonControl(); - playbackControl = new OlympusPenPlaybackControl(communicationTimeoutMs); + playbackControl = new OlympusPenPlaybackControl(context, communicationTimeoutMs); hardwareStatus = new OlympusPenHardwareStatus(); runMode = new OlympusPenRunMode(); } diff --git a/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/playback/OlympusPenPlaybackControl.java b/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/playback/OlympusPenPlaybackControl.java index edc743d..9d82673 100644 --- a/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/playback/OlympusPenPlaybackControl.java +++ b/app/src/main/java/net/osdn/gokigen/pkremote/camera/vendor/olympuspen/wrapper/playback/OlympusPenPlaybackControl.java @@ -1,4 +1,6 @@ package net.osdn.gokigen.pkremote.camera.vendor.olympuspen.wrapper.playback; +import android.app.Activity; +import android.content.SharedPreferences; import android.graphics.Bitmap; import android.util.Log; @@ -11,11 +13,13 @@ import net.osdn.gokigen.pkremote.camera.interfaces.playback.IDownloadThumbnailIm import net.osdn.gokigen.pkremote.camera.interfaces.playback.IPlaybackControl; import net.osdn.gokigen.pkremote.camera.playback.ProgressEvent; import net.osdn.gokigen.pkremote.camera.utils.SimpleHttpClient; +import net.osdn.gokigen.pkremote.preference.IPreferencePropertyAccessor; import java.util.HashMap; import java.util.Map; import androidx.annotation.NonNull; +import androidx.preference.PreferenceManager; /** * @@ -25,12 +29,14 @@ public class OlympusPenPlaybackControl implements IPlaybackControl { private final String TAG = toString(); private static final int DEFAULT_TIMEOUT = 3000; + private final Activity activity; private final int timeoutValue; private OlympusPenObjectDataHolder imageListHolder = new OlympusPenObjectDataHolder(); - public OlympusPenPlaybackControl(int timeoutMs) + public OlympusPenPlaybackControl(@NonNull Activity activity, int timeoutMs) { Log.v(TAG, "OlympusPenPlaybackControl()"); + this.activity = activity; this.timeoutValue = (timeoutMs < DEFAULT_TIMEOUT) ? DEFAULT_TIMEOUT : timeoutMs; } @@ -115,8 +121,18 @@ public class OlympusPenPlaybackControl implements IPlaybackControl String url; if ((isSmallSize)&&(path.contains(".JPG"))) { + String smallSize = "1600"; + try + { + SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(activity); + smallSize = preferences.getString(IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE, IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE_DEFAULT_VALUE); + } + catch (Exception e) + { + e.printStackTrace(); + } // 縮小サイズで画像をとる - url = "http://192.168.0.10/get_resizeimg.cgi?DIR=" + path + "&size=" + "1600"; + url = "http://192.168.0.10/get_resizeimg.cgi?DIR=" + path + "&size=" + smallSize; } else { diff --git a/app/src/main/java/net/osdn/gokigen/pkremote/preference/IPreferencePropertyAccessor.java b/app/src/main/java/net/osdn/gokigen/pkremote/preference/IPreferencePropertyAccessor.java index 4bbb2fd..07015dc 100644 --- a/app/src/main/java/net/osdn/gokigen/pkremote/preference/IPreferencePropertyAccessor.java +++ b/app/src/main/java/net/osdn/gokigen/pkremote/preference/IPreferencePropertyAccessor.java @@ -28,6 +28,10 @@ public interface IPreferencePropertyAccessor String SMALL_PICTURE_SIZE = "download_small_picture_size"; String SMALL_PICTURE_SIZE_DEFAULT_VALUE = "1600"; + String PEN_SMALL_PICTURE_SIZE = "pen_download_small_picture_size"; + String PEN_SMALL_PICTURE_SIZE_DEFAULT_VALUE = "1600"; + + String CAMERAKIT_VERSION = "camerakit_version"; String SHOW_GRID_STATUS = "show_grid"; diff --git a/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympus/OpcPreferenceFragment.java b/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympus/OpcPreferenceFragment.java index 0031e89..1c5b66e 100644 --- a/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympus/OpcPreferenceFragment.java +++ b/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympus/OpcPreferenceFragment.java @@ -155,6 +155,9 @@ public class OpcPreferenceFragment extends PreferenceFragmentCompat implements S if (!items.containsKey(IPreferencePropertyAccessor.SMALL_PICTURE_SIZE)) { editor.putString(IPreferencePropertyAccessor.SMALL_PICTURE_SIZE, IPreferencePropertyAccessor.SMALL_PICTURE_SIZE_DEFAULT_VALUE); } + if (!items.containsKey(IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE)) { + editor.putString(IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE, IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE_DEFAULT_VALUE); + } editor.apply(); } diff --git a/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympuspen/OlympusPenPreferenceFragment.java b/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympuspen/OlympusPenPreferenceFragment.java index 39450e6..e15fb0b 100644 --- a/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympuspen/OlympusPenPreferenceFragment.java +++ b/app/src/main/java/net/osdn/gokigen/pkremote/preference/olympuspen/OlympusPenPreferenceFragment.java @@ -117,6 +117,9 @@ public class OlympusPenPreferenceFragment extends PreferenceFragmentCompat impl if (!items.containsKey(IPreferencePropertyAccessor.CONNECTION_METHOD)) { editor.putString(IPreferencePropertyAccessor.CONNECTION_METHOD, IPreferencePropertyAccessor.CONNECTION_METHOD_DEFAULT_VALUE); } + if (!items.containsKey(IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE)) { + editor.putString(IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE, IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE_DEFAULT_VALUE); + } editor.apply(); } catch (Exception e) @@ -179,6 +182,16 @@ public class OlympusPenPreferenceFragment extends PreferenceFragmentCompat impl }); connectionMethod.setSummary(connectionMethod.getValue() + " "); + ListPreference smallPictureSize = findPreference(IPreferencePropertyAccessor.PEN_SMALL_PICTURE_SIZE); + smallPictureSize.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(Preference preference, Object newValue) { + preference.setSummary(newValue + " "); + return (true); + } + }); + smallPictureSize.setSummary(smallPictureSize.getValue() + " "); + findPreference("exit_application").setOnPreferenceClickListener(powerOffController); findPreference("debug_info").setOnPreferenceClickListener(logCatViewer); } diff --git a/app/src/main/res/xml/preferences_olympus.xml b/app/src/main/res/xml/preferences_olympus.xml index 58394c3..7066b96 100644 --- a/app/src/main/res/xml/preferences_olympus.xml +++ b/app/src/main/res/xml/preferences_olympus.xml @@ -20,27 +20,13 @@ -