• R/O
  • HTTP
  • SSH
  • HTTPS

Gr2Control: Commit

Ricoh GR2 Control App for Android.


Commit MetaInfo

Revisãoecd437caf35254be9341b97745d5f240aa527b17 (tree)
Hora2019-08-03 23:51:30
AutorMRSa <mrsa@myad...>
CommiterMRSa

Mensagem de Log

物理ボタン(音量+)キーでシャッターが切れるようにする。

Mudança Sumário

Diff

--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,13 +1,13 @@
11 apply plugin: 'com.android.application'
22
33 android {
4- compileSdkVersion 28
4+ compileSdkVersion 29
55 defaultConfig {
66 applicationId "net.osdn.gokigen.gr2control"
77 minSdkVersion 14
8- targetSdkVersion 28
9- versionCode 1002001
10- versionName "1.2.1"
8+ targetSdkVersion 29
9+ versionCode 1002002
10+ versionName "1.2.2"
1111 }
1212 buildTypes {
1313 release {
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -14,6 +14,7 @@
1414 android:label="@string/app_name"
1515 android:roundIcon="@mipmap/ic_launcher_round"
1616 android:usesCleartextTraffic="true"
17+ android:requestLegacyExternalStorage="true"
1718 android:supportsRtl="true"
1819 android:theme="@style/AppTheme">
1920 <activity android:name=".Gr2ControlMain">
--- a/app/src/main/java/net/osdn/gokigen/gr2control/liveview/LiveViewClickTouchListener.java
+++ b/app/src/main/java/net/osdn/gokigen/gr2control/liveview/LiveViewClickTouchListener.java
@@ -3,6 +3,7 @@ package net.osdn.gokigen.gr2control.liveview;
33 import android.app.Activity;
44 import android.content.SharedPreferences;
55 import android.util.Log;
6+import android.view.KeyEvent;
67 import android.view.MotionEvent;
78 import android.view.View;
89
@@ -24,7 +25,7 @@ import androidx.preference.PreferenceManager;
2425 *
2526 *
2627 */
27-class LiveViewClickTouchListener implements View.OnClickListener, View.OnTouchListener
28+class LiveViewClickTouchListener implements View.OnClickListener, View.OnTouchListener, View.OnKeyListener
2829 {
2930 private final String TAG = toString();
3031 private final Activity context;
@@ -383,4 +384,27 @@ class LiveViewClickTouchListener implements View.OnClickListener, View.OnTouchLi
383384 Log.v(TAG, "onTouch() : " + id + " (" + motionEvent.getX() + "," + motionEvent.getY() + ")");
384385 return ((id == R.id.cameraLiveImageView)&&(focusingControl.driveAutoFocus(motionEvent)));
385386 }
387+
388+ /**
389+ * ボタンを押したときの対応
390+ *
391+ */
392+ @Override
393+ public boolean onKey(View view, int keyCode, @NonNull KeyEvent keyEvent)
394+ {
395+ Log.v(TAG, "onKey() : " + keyCode);
396+ try
397+ {
398+ if ((keyEvent.getAction() == KeyEvent.ACTION_DOWN)&&
399+ ((keyCode == KeyEvent.KEYCODE_VOLUME_UP)||(keyCode == KeyEvent.KEYCODE_CAMERA)))
400+ {
401+ pushedShutterButton();
402+ }
403+ }
404+ catch (Exception e)
405+ {
406+ e.printStackTrace();
407+ }
408+ return (false);
409+ }
386410 }
--- a/app/src/main/java/net/osdn/gokigen/gr2control/liveview/LiveViewFragment.java
+++ b/app/src/main/java/net/osdn/gokigen/gr2control/liveview/LiveViewFragment.java
@@ -163,6 +163,10 @@ public class LiveViewFragment extends Fragment implements IStatusViewDrawer, IFo
163163 imageView.setOnClickListener(onClickTouchListener);
164164 imageView.setOnTouchListener(onClickTouchListener);
165165
166+ // キーイベントを拾うことにする
167+ view.setOnKeyListener(onClickTouchListener);
168+ view.setFocusableInTouchMode(true);
169+
166170 setOnClickListener(view, R.id.hideControlPanelTextView);
167171 setOnClickListener(view, R.id.showControlPanelTextView);
168172 setOnClickListener(view, R.id.showKeyPanelImageView);
@@ -969,7 +973,7 @@ public class LiveViewFragment extends Fragment implements IStatusViewDrawer, IFo
969973 @Override
970974 public void updateFocusedStatus(final boolean focused, final boolean focusLocked)
971975 {
972- Activity activity = getActivity();
976+ final Activity activity = getActivity();
973977 try
974978 {
975979 if (activity != null)
@@ -979,7 +983,7 @@ public class LiveViewFragment extends Fragment implements IStatusViewDrawer, IFo
979983 public void run() {
980984 try
981985 {
982- ImageView view = getActivity().findViewById(R.id.focusUnlockImageView);
986+ ImageView view = activity.findViewById(R.id.focusUnlockImageView);
983987 if (focused) {
984988 Drawable icon = ResourcesCompat.getDrawable(getResources(), R.drawable.ic_center_focus_strong_black_24dp, null);
985989 if (icon != null) {
--- a/build.gradle
+++ b/build.gradle
@@ -7,7 +7,7 @@ buildscript {
77 jcenter()
88 }
99 dependencies {
10- classpath 'com.android.tools.build:gradle:3.4.0'
10+ classpath 'com.android.tools.build:gradle:3.4.2'
1111
1212
1313 // NOTE: Do not place your application dependencies here; they belong
Show on old repository browser