From d5e574a606fbccec88c32e43c4e0d216b597d1c1 Mon Sep 17 00:00:00 2001 From: Michael W Date: Mon, 23 May 2016 13:17:28 +0200 Subject: Gallery: Try to open existing camera Do not just open Camera2, just open any existing cam Also get rid of context parameter as it's unused (Reference: BugReports 13-20160506-12 Line #5) Change-Id: I18514ee30411a639230840fc2f152b8331bbca3d --- src/com/android/camera/CameraActivity.java | 18 +++++++++++------- src/com/android/gallery3d/app/Gallery.java | 2 +- src/com/android/gallery3d/util/GalleryUtils.java | 2 +- 3 files changed, 13 insertions(+), 9 deletions(-) (limited to 'src') diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java index b74af47b3..9462aed38 100644 --- a/src/com/android/camera/CameraActivity.java +++ b/src/com/android/camera/CameraActivity.java @@ -15,6 +15,7 @@ */ package com.android.camera; +import com.android.gallery3d.util.GalleryUtils; import com.android.gallery3d.util.IntentHelper; import android.app.Activity; @@ -26,13 +27,16 @@ public class CameraActivity extends Activity { @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); - Intent intent = IntentHelper.getCameraIntent(CameraActivity.this); - // Since this is being launched from a homescreen shorcut, - // it's already in a new task. Start Camera activity and - // reset the task to its initial state if needed. - intent.setFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - startActivity(intent); + + if (GalleryUtils.isCameraAvailable(CameraActivity.this)) { + Intent intent = IntentHelper.getCameraIntent(); + // Since this is being launched from a homescreen shorcut, + // it's already in a new task. Start Camera activity and + // reset the task to its initial state if needed. + intent.setFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + startActivity(intent); + } finish(); } } diff --git a/src/com/android/gallery3d/app/Gallery.java b/src/com/android/gallery3d/app/Gallery.java index fd9097d29..df3c0f957 100644 --- a/src/com/android/gallery3d/app/Gallery.java +++ b/src/com/android/gallery3d/app/Gallery.java @@ -26,7 +26,7 @@ public class Gallery extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - Intent intent = IntentHelper.getGalleryIntent(Gallery.this); + Intent intent = IntentHelper.getGalleryIntent(); // Since this is being launched from a homescreen shortcut, // it's already in a new task. Start Gallery activity and // reset the task to its initial state if needed. diff --git a/src/com/android/gallery3d/util/GalleryUtils.java b/src/com/android/gallery3d/util/GalleryUtils.java index 8e4ebb714..ed2870509 100644 --- a/src/com/android/gallery3d/util/GalleryUtils.java +++ b/src/com/android/gallery3d/util/GalleryUtils.java @@ -238,7 +238,7 @@ public class GalleryUtils { public static boolean isCameraAvailable(Context context) { if (sCameraAvailableInitialized) return sCameraAvailable; PackageManager pm = context.getPackageManager(); - Intent cameraIntent = IntentHelper.getCameraIntent(context); + Intent cameraIntent = IntentHelper.getCameraIntent(); List apps = pm.queryIntentActivities(cameraIntent, 0); sCameraAvailableInitialized = true; sCameraAvailable = !apps.isEmpty(); -- cgit v1.2.3