SuchABot has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/69253


Change subject: bug 47671 -- don't show crashy photo button if no camera present
......................................................................

bug 47671 -- don't show crashy photo button if no camera present

We were crashing when trying to take a photo if no camera was
present on the device, since no activity can be found for the
camera intent and an exception is thrown.

Work around this by simply checking if the device has a camera
via the package manager feature checks, and hiding the menu item
if relevant.

Change-Id: I635946ed32cf768917db4a8dff0058061e45e6ec
GitHub: https://github.com/wikimedia/apps-android-commons/pull/13
---
M 
commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java
1 file changed, 8 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/apps/android/commons 
refs/changes/53/69253/1

diff --git 
a/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java
 
b/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java
index 8ffbaa4..4ece455 100644
--- 
a/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java
+++ 
b/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java
@@ -4,6 +4,7 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.SharedPreferences;
+import android.content.pm.PackageManager;
 import android.database.Cursor;
 import android.graphics.Bitmap;
 import android.graphics.drawable.BitmapDrawable;
@@ -266,6 +267,13 @@
     public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
         menu.clear(); // See http://stackoverflow.com/a/8495697/17865
         inflater.inflate(R.menu.fragment_contributions_list, menu);
+        menu.findItem(R.id.menu_from_camera).setVisible(deviceHasCamera());
+    }
+
+    private boolean deviceHasCamera() {
+        PackageManager pm = getActivity().getPackageManager();
+        return pm.hasSystemFeature(PackageManager.FEATURE_CAMERA) ||
+               pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT);
     }
 
     @Override

-- 
To view, visit https://gerrit.wikimedia.org/r/69253
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I635946ed32cf768917db4a8dff0058061e45e6ec
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/commons
Gerrit-Branch: master
Gerrit-Owner: SuchABot <[email protected]>
Gerrit-Reviewer: Brion VIBBER <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to