From: Bartek Przybylski Date: Sun, 17 Jun 2012 10:28:19 +0000 (+0200) Subject: dont crash when there are no candidates to open file X-Git-Tag: oc-android-1.4.3~361 X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/commitdiff_plain/fcf40b4423731d708d6eb294bef3eeafcfacfaad?ds=inline dont crash when there are no candidates to open file --- diff --git a/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java b/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java index 2241f6f6..d7153d4b 100644 --- a/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java +++ b/src/eu/alefzero/owncloud/ui/fragment/FileDetailFragment.java @@ -17,12 +17,15 @@ */ package eu.alefzero.owncloud.ui.fragment; +import java.util.List; + import android.accounts.Account; import android.accounts.AccountManager; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; +import android.content.pm.PackageManager; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.net.Uri; @@ -207,7 +210,12 @@ public class FileDetailFragment extends SherlockFragment implements public void onClick(View v) { Intent i = new Intent(Intent.ACTION_VIEW); i.setDataAndType(Uri.parse("file://"+mFile.getStoragePath()), mFile.getMimetype()); - startActivity(i); + List list = getActivity().getPackageManager().queryIntentActivities(i, PackageManager.MATCH_DEFAULT_ONLY); + if (list.size() > 0) { + startActivity(i); + } else { + Toast.makeText(getActivity(), "There is no application to handle file " + mFile.getFileName(), Toast.LENGTH_SHORT).show(); + } } }); } else {