diff --git a/commons/res/menu/fragment_image_detail.xml b/commons/res/menu/fragment_image_detail.xml index aed7c5113..8a114ddbc 100644 --- a/commons/res/menu/fragment_image_detail.xml +++ b/commons/res/menu/fragment_image_detail.xml @@ -19,14 +19,14 @@ - diff --git a/commons/res/values-qq/strings.xml b/commons/res/values-qq/strings.xml index 44ec50d47..cd783dcd9 100644 --- a/commons/res/values-qq/strings.xml +++ b/commons/res/values-qq/strings.xml @@ -73,9 +73,9 @@ Menu item text that prompts user to send feedback to WMF via email Message shown on contributions list during first sync. Message shown on contribution list during non-first sync if no uploads present. - Menu item text prompting user to retry a failed upload. + Menu item text prompting user to retry a failed upload. {{Identical|Retry}} - Menu item text prompting user to abort and delete a failed upload. + Menu item text prompting user to cancel and delete a failed upload. Text label telling user the license of the current upload in progress. %1$s refers to appropriate display text for the chosen CC license Menu item text prompting user to download a selected photo or media file locally. {{Identical|Download}} diff --git a/commons/res/values/strings.xml b/commons/res/values/strings.xml index 5a5c1d197..d63160b23 100644 --- a/commons/res/values/strings.xml +++ b/commons/res/values/strings.xml @@ -85,8 +85,8 @@ Waiting for first sync... You have not yet uploaded any photos. - Retry - Abort + Retry + Cancel This image will be licensed under %1$s diff --git a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java index ee15689a6..72817acf0 100644 --- a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java @@ -142,7 +142,7 @@ public class MediaDetailPagerFragment extends SherlockFragment implements ViewPa ((ContributionsActivity)getActivity()).retryUpload(pager.getCurrentItem()); getSherlockActivity().getSupportFragmentManager().popBackStack(); return true; - case R.id.menu_abort_current_image: + case R.id.menu_cancel_current_image: // todo: delete image ((ContributionsActivity)getActivity()).deleteUpload(pager.getCurrentItem()); getSherlockActivity().getSupportFragmentManager().popBackStack(); @@ -228,13 +228,37 @@ public class MediaDetailPagerFragment extends SherlockFragment implements ViewPa if(pager != null) { MediaDetailProvider provider = (MediaDetailProvider)getSherlockActivity(); Media m = provider.getMediaAtPosition(pager.getCurrentItem()); - if(m != null && !m.getFilename().startsWith("File:")) { - // Crude way of checking if the file has been successfully saved! - menu.findItem(R.id.menu_browser_current_image).setEnabled(false).setVisible(false); - menu.findItem(R.id.menu_share_current_image).setEnabled(false).setVisible(false); - menu.findItem(R.id.menu_download_current_image).setEnabled(false).setVisible(false); - menu.findItem(R.id.menu_retry_current_image).setEnabled(true).setVisible(true); - menu.findItem(R.id.menu_abort_current_image).setEnabled(true).setVisible(true); + if(m != null) { + // Enable default set of actions, then re-enable different set of actions only if it is a failed contrib + + if(m instanceof Contribution) { + Contribution c = (Contribution)m; + switch(c.getState()) { + case Contribution.STATE_FAILED: + menu.findItem(R.id.menu_retry_current_image).setEnabled(true).setVisible(true); + menu.findItem(R.id.menu_cancel_current_image).setEnabled(true).setVisible(true); + menu.findItem(R.id.menu_browser_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_share_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_download_current_image).setEnabled(false).setVisible(false); + break; + case Contribution.STATE_IN_PROGRESS: + case Contribution.STATE_QUEUED: + menu.findItem(R.id.menu_retry_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_cancel_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_browser_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_share_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_download_current_image).setEnabled(false).setVisible(false); + break; + case Contribution.STATE_COMPLETED: + menu.findItem(R.id.menu_retry_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_cancel_current_image).setEnabled(false).setVisible(false); + menu.findItem(R.id.menu_browser_current_image).setEnabled(true).setVisible(true); + menu.findItem(R.id.menu_share_current_image).setEnabled(true).setVisible(true); + menu.findItem(R.id.menu_download_current_image).setEnabled(true).setVisible(true); + break; + } + + } return; } }