package net.osdn.gokigen.gr2control.preference.ricohgr2;
import android.content.Context;
+import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v4.app.FragmentActivity;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.preference.CheckBoxPreference;
-import android.support.v7.preference.ListPreference;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceFragmentCompat;
-import android.support.v7.preference.PreferenceManager;
+import android.provider.Settings;
import android.util.Log;
import net.osdn.gokigen.gr2control.R;
-import net.osdn.gokigen.gr2control.camera.ricohgr2.operation.CameraPowerOffRicohGr2;
+import net.osdn.gokigen.gr2control.camera.ricohgr2.operation.RicohGr2CameraPowerOff;
import net.osdn.gokigen.gr2control.logcat.LogCatViewer;
import net.osdn.gokigen.gr2control.preference.IPreferencePropertyAccessor;
import net.osdn.gokigen.gr2control.scene.IChangeScene;
import java.util.Map;
-public class RicohGr2PreferenceFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener
+import androidx.annotation.NonNull;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.fragment.app.FragmentActivity;
+import androidx.preference.CheckBoxPreference;
+import androidx.preference.ListPreference;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
+import androidx.preference.PreferenceManager;
+
+public class RicohGr2PreferenceFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener, Preference.OnPreferenceClickListener
{
private final String TAG = toString();
+ private AppCompatActivity context = null;
private SharedPreferences preferences = null;
- private CameraPowerOffRicohGr2 powerOffController = null;
+ private RicohGr2CameraPowerOff powerOffController = null;
private LogCatViewer logCatViewer = null;
/**
{
try
{
- powerOffController = new CameraPowerOffRicohGr2(context, changeScene);
+ powerOffController = new RicohGr2CameraPowerOff(context, changeScene);
powerOffController.prepare();
logCatViewer = new LogCatViewer(changeScene);
logCatViewer.prepare();
+
+ this.context = context;
}
catch (Exception e)
{
*
*/
@Override
- public void onAttach(Context activity)
+ public void onAttach(@NonNull Context activity)
{
super.onAttach(activity);
Log.v(TAG, "onAttach()");
Map<String, ?> items = preferences.getAll();
SharedPreferences.Editor editor = preferences.edit();
- if (!items.containsKey(IPreferencePropertyAccessor.AUTO_CONNECT_TO_CAMERA)) {
+ if (!items.containsKey(IPreferencePropertyAccessor.RICOH_GET_PICS_LIST_TIMEOUT))
+ {
+ editor.putString(IPreferencePropertyAccessor.RICOH_GET_PICS_LIST_TIMEOUT, IPreferencePropertyAccessor.RICOH_GET_PICS_LIST_TIMEOUT_DEFAULT_VALUE);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.LIVE_VIEW_QUALITY))
+ {
+ editor.putString(IPreferencePropertyAccessor.LIVE_VIEW_QUALITY, IPreferencePropertyAccessor.LIVE_VIEW_QUALITY_DEFAULT_VALUE);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.SOUND_VOLUME_LEVEL))
+ {
+ editor.putString(IPreferencePropertyAccessor.SOUND_VOLUME_LEVEL, IPreferencePropertyAccessor.SOUND_VOLUME_LEVEL_DEFAULT_VALUE);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.RAW))
+ {
+ editor.putBoolean(IPreferencePropertyAccessor.RAW, true);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.AUTO_CONNECT_TO_CAMERA))
+ {
editor.putBoolean(IPreferencePropertyAccessor.AUTO_CONNECT_TO_CAMERA, true);
}
- if (!items.containsKey(IPreferencePropertyAccessor.CAPTURE_BOTH_CAMERA_AND_LIVE_VIEW)) {
+ if (!items.containsKey(IPreferencePropertyAccessor.CAPTURE_BOTH_CAMERA_AND_LIVE_VIEW))
+ {
editor.putBoolean(IPreferencePropertyAccessor.CAPTURE_BOTH_CAMERA_AND_LIVE_VIEW, true);
}
- if (!items.containsKey(IPreferencePropertyAccessor.USE_PLAYBACK_MENU)) {
- editor.putBoolean(IPreferencePropertyAccessor.USE_PLAYBACK_MENU, false);
- }
- if (!items.containsKey(IPreferencePropertyAccessor.CONNECTION_METHOD)) {
+ if (!items.containsKey(IPreferencePropertyAccessor.CONNECTION_METHOD))
+ {
editor.putString(IPreferencePropertyAccessor.CONNECTION_METHOD, IPreferencePropertyAccessor.CONNECTION_METHOD_DEFAULT_VALUE);
}
+ if (!items.containsKey(IPreferencePropertyAccessor.SHARE_AFTER_SAVE)) {
+ editor.putBoolean(IPreferencePropertyAccessor.SHARE_AFTER_SAVE, false);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.USE_PLAYBACK_MENU)) {
+ editor.putBoolean(IPreferencePropertyAccessor.USE_PLAYBACK_MENU, true);
+ }
if (!items.containsKey(IPreferencePropertyAccessor.GR2_DISPLAY_CAMERA_VIEW)) {
editor.putBoolean(IPreferencePropertyAccessor.GR2_DISPLAY_CAMERA_VIEW, true);
}
if (!items.containsKey(IPreferencePropertyAccessor.GR2_LCD_SLEEP)) {
editor.putBoolean(IPreferencePropertyAccessor.GR2_LCD_SLEEP, false);
}
- if (!items.containsKey(IPreferencePropertyAccessor.SHARE_AFTER_SAVE)) {
- editor.putBoolean(IPreferencePropertyAccessor.SHARE_AFTER_SAVE, false);
- }
if (!items.containsKey(IPreferencePropertyAccessor.USE_GR2_SPECIAL_COMMAND)) {
editor.putBoolean(IPreferencePropertyAccessor.USE_GR2_SPECIAL_COMMAND, true);
}
+ if (!items.containsKey(IPreferencePropertyAccessor.PENTAX_CAPTURE_AFTER_AF)) {
+ editor.putBoolean(IPreferencePropertyAccessor.PENTAX_CAPTURE_AFTER_AF, false);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.FUJI_X_DISPLAY_CAMERA_VIEW)) {
+ editor.putBoolean(IPreferencePropertyAccessor.FUJI_X_DISPLAY_CAMERA_VIEW, false);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.FUJI_X_FOCUS_XY)) {
+ editor.putString(IPreferencePropertyAccessor.FUJI_X_FOCUS_XY, IPreferencePropertyAccessor.FUJI_X_FOCUS_XY_DEFAULT_VALUE);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.FUJI_X_LIVEVIEW_WAIT)) {
+ editor.putString(IPreferencePropertyAccessor.FUJI_X_LIVEVIEW_WAIT, IPreferencePropertyAccessor.FUJI_X_LIVEVIEW_WAIT_DEFAULT_VALUE);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.FUJI_X_COMMAND_POLLING_WAIT)) {
+ editor.putString(IPreferencePropertyAccessor.FUJI_X_COMMAND_POLLING_WAIT, IPreferencePropertyAccessor.FUJI_X_COMMAND_POLLING_WAIT_DEFAULT_VALUE);
+ }
+ if (!items.containsKey(IPreferencePropertyAccessor.FUJI_X_GET_SCREENNAIL_AS_SMALL_PICTURE)) {
+ editor.putBoolean(IPreferencePropertyAccessor.FUJI_X_GET_SCREENNAIL_AS_SMALL_PICTURE, false);
+ }
editor.apply();
}
catch (Exception e)
case IPreferencePropertyAccessor.CAPTURE_BOTH_CAMERA_AND_LIVE_VIEW:
value = preferences.getBoolean(key, true);
- Log.v(TAG, " " + key + " , " + value);
+ Log.v(TAG, " BOTH LV : " + key + " , " + value);
break;
case IPreferencePropertyAccessor.USE_PLAYBACK_MENU:
case IPreferencePropertyAccessor.GR2_DISPLAY_CAMERA_VIEW:
value = preferences.getBoolean(key, true);
- Log.v(TAG, " " + key + " , " + value);
+ Log.v(TAG, " GR2 DISPLAY : " + key + " , " + value);
break;
case IPreferencePropertyAccessor.GR2_LCD_SLEEP:
value = preferences.getBoolean(key, false);
- Log.v(TAG, " " + key + " , " + value);
+ Log.v(TAG, " GR2 LCD : " + key + " , " + value);
break;
case IPreferencePropertyAccessor.SHARE_AFTER_SAVE:
value = preferences.getBoolean(key, false);
- Log.v(TAG, " " + key + " , " + value);
+ Log.v(TAG, " SHARE : " + key + " , " + value);
break;
case IPreferencePropertyAccessor.USE_GR2_SPECIAL_COMMAND:
value = preferences.getBoolean(key, true);
- Log.v(TAG, " " + key + " , " + value);
+ Log.v(TAG, " GR2 SPECIAL : " + key + " , " + value);
+ break;
+
+ case IPreferencePropertyAccessor.PENTAX_CAPTURE_AFTER_AF:
+ value = preferences.getBoolean(key, false);
+ Log.v(TAG, " PENTAX AFTER AF : " + key + " , " + value);
break;
default:
//super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences_ricoh_gr2);
- ListPreference connectionMethod = (ListPreference) findPreference(IPreferencePropertyAccessor.CONNECTION_METHOD);
- connectionMethod.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- preference.setSummary(newValue + " ");
- return (true);
- }
- });
- connectionMethod.setSummary(connectionMethod.getValue() + " ");
+ ListPreference connectionMethod = findPreference(IPreferencePropertyAccessor.CONNECTION_METHOD);
+ if (connectionMethod != null)
+ {
+ connectionMethod.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ preference.setSummary(newValue + " ");
+ return (true);
+ }
+ });
+ connectionMethod.setSummary(connectionMethod.getValue() + " ");
+ }
- findPreference("exit_application").setOnPreferenceClickListener(powerOffController);
- findPreference("debug_info").setOnPreferenceClickListener(logCatViewer);
+ Preference exitApplication = findPreference("exit_application");
+ if (exitApplication != null)
+ {
+ exitApplication.setOnPreferenceClickListener(powerOffController);
+ }
+
+ Preference debug = findPreference("debug_info");
+ if (debug != null)
+ {
+ debug.setOnPreferenceClickListener(logCatViewer);
+ }
+
+ Preference wifi = findPreference("wifi_settings");
+ if (wifi != null)
+ {
+ wifi.setOnPreferenceClickListener(this);
+ }
}
catch (Exception e)
{
try
{
ListPreference pref;
- pref = (ListPreference) findPreference(pref_key);
+ pref = findPreference(pref_key);
String value = preferences.getString(key, defaultValue);
if (pref != null)
{
{
try
{
- CheckBoxPreference pref = (CheckBoxPreference) findPreference(pref_key);
- if (pref != null) {
+ CheckBoxPreference pref = findPreference(pref_key);
+ if (pref != null)
+ {
boolean value = preferences.getBoolean(key, defaultValue);
pref.setChecked(value);
}
setBooleanPreference(IPreferencePropertyAccessor.GR2_LCD_SLEEP, IPreferencePropertyAccessor.GR2_LCD_SLEEP, defaultValue);
setBooleanPreference(IPreferencePropertyAccessor.SHARE_AFTER_SAVE, IPreferencePropertyAccessor.SHARE_AFTER_SAVE, defaultValue);
setBooleanPreference(IPreferencePropertyAccessor.USE_GR2_SPECIAL_COMMAND, IPreferencePropertyAccessor.USE_GR2_SPECIAL_COMMAND, defaultValue);
+ setBooleanPreference(IPreferencePropertyAccessor.PENTAX_CAPTURE_AFTER_AF, IPreferencePropertyAccessor.PENTAX_CAPTURE_AFTER_AF, false);
}
catch (Exception e)
{
});
}
}
+
+
+ @Override
+ public boolean onPreferenceClick(Preference preference)
+ {
+ try
+ {
+ String preferenceKey = preference.getKey();
+ if (preferenceKey.contains("wifi_settings"))
+ {
+ // Wifi 設定画面を表示する
+ Log.v(TAG, " onPreferenceClick : " + preferenceKey);
+ if (context != null)
+ {
+ context.startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS));
+ }
+ }
+ return (true);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ return (false);
+ }
}