Yuvipanda has submitted this change and it was merged. 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. GitHub: https://github.com/wikimedia/apps-android-commons/pull/13 Change-Id: I635946ed32cf768917db4a8dff0058061e45e6ec --- M commons/src/main/java/org/wikimedia/commons/CommonsApplication.java M commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java 2 files changed, 10 insertions(+), 0 deletions(-) Approvals: Yuvipanda: Verified; Looks good to me, approved diff --git a/commons/src/main/java/org/wikimedia/commons/CommonsApplication.java b/commons/src/main/java/org/wikimedia/commons/CommonsApplication.java index d6e9812..b9492dd 100644 --- a/commons/src/main/java/org/wikimedia/commons/CommonsApplication.java +++ b/commons/src/main/java/org/wikimedia/commons/CommonsApplication.java @@ -183,5 +183,10 @@ } } + public boolean deviceHasCamera() { + PackageManager pm = getPackageManager(); + return pm.hasSystemFeature(PackageManager.FEATURE_CAMERA) || + pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT); + } } 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..101f4ee 100644 --- a/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/contributions/ContributionsListFragment.java @@ -266,6 +266,11 @@ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { menu.clear(); // See http://stackoverflow.com/a/8495697/17865 inflater.inflate(R.menu.fragment_contributions_list, menu); + + CommonsApplication app = (CommonsApplication)getActivity().getApplicationContext(); + if (!app.deviceHasCamera()) { + menu.findItem(R.id.menu_from_camera).setEnabled(false); + } } @Override -- To view, visit https://gerrit.wikimedia.org/r/69253 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I635946ed32cf768917db4a8dff0058061e45e6ec Gerrit-PatchSet: 2 Gerrit-Project: apps/android/commons Gerrit-Branch: master Gerrit-Owner: SuchABot <[email protected]> Gerrit-Reviewer: Brion VIBBER <[email protected]> Gerrit-Reviewer: Yuvipanda <[email protected]> Gerrit-Reviewer: jenkins-bot _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
