diff --git a/clients/android/NewsBlur/res/values/strings.xml b/clients/android/NewsBlur/res/values/strings.xml index 2340ce9f8..313b0095e 100644 --- a/clients/android/NewsBlur/res/values/strings.xml +++ b/clients/android/NewsBlur/res/values/strings.xml @@ -85,6 +85,7 @@ OKAY CANCEL DONE + OPEN LINK OPEN IMAGE SAVE FOLDERS SAVE TRAINING diff --git a/clients/android/NewsBlur/src/com/newsblur/fragment/ReadingItemFragment.java b/clients/android/NewsBlur/src/com/newsblur/fragment/ReadingItemFragment.java index 8296bd58b..6f600b529 100644 --- a/clients/android/NewsBlur/src/com/newsblur/fragment/ReadingItemFragment.java +++ b/clients/android/NewsBlur/src/com/newsblur/fragment/ReadingItemFragment.java @@ -239,28 +239,34 @@ public class ReadingItemFragment extends NbFragment { String mappedURL = imageUrlRemaps.get(imageURL); final String finalURL = mappedURL == null ? imageURL : mappedURL; final String altText = imageAltTexts.get(finalURL); + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); + builder.setTitle(finalURL); if (altText != null) { - AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); - builder.setTitle(finalURL); builder.setMessage(UIUtils.fromHtml(altText)); - builder.setPositiveButton(R.string.alert_dialog_openimage, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - Intent i = new Intent(Intent.ACTION_VIEW); - i.setData(Uri.parse(finalURL)); - try { - startActivity(i); - } catch (Exception e) { - android.util.Log.wtf(this.getClass().getName(), "device cannot open URLs"); - } - } - }); - builder.setNegativeButton(R.string.alert_dialog_done, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - ; // do nothing - } - }); - builder.show(); + } else { + builder.setMessage(finalURL); } + int actionRID = R.string.alert_dialog_openlink; + if (result.getType() == HitTestResult.IMAGE_TYPE || result.getType() == HitTestResult.SRC_IMAGE_ANCHOR_TYPE ) { + actionRID = R.string.alert_dialog_openimage; + } + builder.setPositiveButton(actionRID, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + Intent i = new Intent(Intent.ACTION_VIEW); + i.setData(Uri.parse(finalURL)); + try { + startActivity(i); + } catch (Exception e) { + android.util.Log.wtf(this.getClass().getName(), "device cannot open URLs"); + } + } + }); + builder.setNegativeButton(R.string.alert_dialog_done, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + ; // do nothing + } + }); + builder.show(); } else { super.onCreateContextMenu(menu, v, menuInfo); }