11package fr .free .nrw .commons .media ;
22
3+ import static android .Manifest .permission .WRITE_EXTERNAL_STORAGE ;
4+ import static android .content .Context .DOWNLOAD_SERVICE ;
5+ import static fr .free .nrw .commons .Utils .handleWebUrl ;
6+
37import android .annotation .SuppressLint ;
48import android .app .DownloadManager ;
59import android .content .Intent ;
1418import android .view .View ;
1519import android .view .ViewGroup ;
1620import android .widget .Toast ;
17-
1821import androidx .fragment .app .Fragment ;
1922import androidx .fragment .app .FragmentManager ;
2023import androidx .fragment .app .FragmentStatePagerAdapter ;
2124import androidx .viewpager .widget .ViewPager ;
22-
23- import javax .inject .Inject ;
24- import javax .inject .Named ;
25-
2625import butterknife .BindView ;
2726import butterknife .ButterKnife ;
2827import fr .free .nrw .commons .Media ;
4241import fr .free .nrw .commons .utils .NetworkUtils ;
4342import fr .free .nrw .commons .utils .PermissionUtils ;
4443import fr .free .nrw .commons .utils .ViewUtil ;
44+ import javax .inject .Inject ;
45+ import javax .inject .Named ;
4546import timber .log .Timber ;
4647
47- import static android .Manifest .permission .WRITE_EXTERNAL_STORAGE ;
48- import static android .content .Context .DOWNLOAD_SERVICE ;
49- import static fr .free .nrw .commons .Utils .handleWebUrl ;
50-
5148public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment implements ViewPager .OnPageChangeListener {
5249
5350 @ Inject SessionManager sessionManager ;
@@ -256,6 +253,7 @@ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
256253 menu .findItem (R .id .menu_share_current_image ).setEnabled (true ).setVisible (true );
257254 menu .findItem (R .id .menu_download_current_image ).setEnabled (true ).setVisible (true );
258255 menu .findItem (R .id .menu_bookmark_current_image ).setEnabled (true ).setVisible (true );
256+ menu .findItem (R .id .menu_set_as_wallpaper ).setEnabled (true ).setVisible (true );
259257
260258 // Initialize bookmark object
261259 bookmark = new Bookmark (
@@ -265,27 +263,39 @@ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
265263 );
266264 updateBookmarkState (menu .findItem (R .id .menu_bookmark_current_image ));
267265
268- if (m instanceof Contribution ) {
266+ if (m instanceof Contribution ) {
269267 Contribution c = (Contribution ) m ;
270268 switch (c .getState ()) {
271269 case Contribution .STATE_FAILED :
272- menu .findItem (R .id .menu_browser_current_image ).setEnabled (false ).setVisible (false );
273- menu .findItem (R .id .menu_share_current_image ).setEnabled (false ).setVisible (false );
274- menu .findItem (R .id .menu_download_current_image ).setEnabled (false ).setVisible (false );
275- menu .findItem (R .id .menu_bookmark_current_image ).setEnabled (false ).setVisible (false );
276- break ;
277270 case Contribution .STATE_IN_PROGRESS :
278271 case Contribution .STATE_QUEUED :
279- menu .findItem (R .id .menu_browser_current_image ).setEnabled (false ).setVisible (false );
280- menu .findItem (R .id .menu_share_current_image ).setEnabled (false ).setVisible (false );
281- menu .findItem (R .id .menu_download_current_image ).setEnabled (false ).setVisible (false );
282- menu .findItem (R .id .menu_bookmark_current_image ).setEnabled (false ).setVisible (false );
272+ menu .findItem (R .id .menu_browser_current_image ).setEnabled (false )
273+ .setVisible (false );
274+ menu .findItem (R .id .menu_share_current_image ).setEnabled (false )
275+ .setVisible (false );
276+ menu .findItem (R .id .menu_download_current_image ).setEnabled (false )
277+ .setVisible (false );
278+ menu .findItem (R .id .menu_bookmark_current_image ).setEnabled (false )
279+ .setVisible (false );
280+ menu .findItem (R .id .menu_set_as_wallpaper ).setEnabled (false )
281+ .setVisible (false );
283282 break ;
284283 case Contribution .STATE_COMPLETED :
285284 // Default set of menu items works fine. Treat same as regular media object
286285 break ;
287286 }
288287 }
288+ } else {
289+ menu .findItem (R .id .menu_browser_current_image ).setEnabled (false )
290+ .setVisible (false );
291+ menu .findItem (R .id .menu_share_current_image ).setEnabled (false )
292+ .setVisible (false );
293+ menu .findItem (R .id .menu_download_current_image ).setEnabled (false )
294+ .setVisible (false );
295+ menu .findItem (R .id .menu_bookmark_current_image ).setEnabled (false )
296+ .setVisible (false );
297+ menu .findItem (R .id .menu_set_as_wallpaper ).setEnabled (false )
298+ .setVisible (false );
289299 }
290300 }
291301 }
0 commit comments