mirror of
				https://github.com/KokaKiwi/BarInsta
				synced 2025-11-04 05:25:35 +00:00 
			
		
		
		
	new story menubar; effectively close #553
This commit is contained in:
		
							parent
							
								
									04ee3883ea
								
							
						
					
					
						commit
						4c800835c3
					
				@ -137,14 +137,14 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
    private String[] mentions;
 | 
			
		||||
    private QuizModel quiz;
 | 
			
		||||
    private SliderModel slider;
 | 
			
		||||
    private MenuItem menuDownload;
 | 
			
		||||
    private MenuItem menuDm;
 | 
			
		||||
    private MenuItem menuDownload, menuDm, menuProfile;
 | 
			
		||||
    private SimpleExoPlayer player;
 | 
			
		||||
    // private boolean isHashtag;
 | 
			
		||||
    // private boolean isLoc;
 | 
			
		||||
    // private String highlight;
 | 
			
		||||
    private String actionBarTitle;
 | 
			
		||||
    private String actionBarTitle, actionBarSubtitle;
 | 
			
		||||
    private boolean fetching = false, sticking = false, shouldRefresh = true;
 | 
			
		||||
    private boolean downloadVisible = false, dmVisible = false, profileVisible = true;
 | 
			
		||||
    private int currentFeedStoryIndex;
 | 
			
		||||
    private double sliderValue;
 | 
			
		||||
    private StoriesViewModel storiesViewModel;
 | 
			
		||||
@ -195,8 +195,10 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
        menuInflater.inflate(R.menu.story_menu, menu);
 | 
			
		||||
        menuDownload = menu.findItem(R.id.action_download);
 | 
			
		||||
        menuDm = menu.findItem(R.id.action_dms);
 | 
			
		||||
        menuDownload.setVisible(false);
 | 
			
		||||
        menuDm.setVisible(false);
 | 
			
		||||
        menuProfile = menu.findItem(R.id.action_profile);
 | 
			
		||||
        menuDownload.setVisible(downloadVisible);
 | 
			
		||||
        menuDm.setVisible(dmVisible);
 | 
			
		||||
        menuProfile.setVisible(profileVisible);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
@ -215,7 +217,8 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
            else
 | 
			
		||||
                ActivityCompat.requestPermissions(requireActivity(), DownloadUtils.PERMS, 8020);
 | 
			
		||||
            return true;
 | 
			
		||||
        } else if (itemId == R.id.action_dms) {
 | 
			
		||||
        }
 | 
			
		||||
        if (itemId == R.id.action_dms) {
 | 
			
		||||
            final EditText input = new EditText(context);
 | 
			
		||||
            input.setHint(R.string.reply_hint);
 | 
			
		||||
            new AlertDialog.Builder(context)
 | 
			
		||||
@ -259,6 +262,9 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
                    .show();
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        if (itemId == R.id.action_profile) {
 | 
			
		||||
            openProfile("@" + currentStory.getUsername());
 | 
			
		||||
        }
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -281,7 +287,9 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
        final ActionBar actionBar = fragmentActivity.getSupportActionBar();
 | 
			
		||||
        if (actionBar != null) {
 | 
			
		||||
            actionBar.setTitle(actionBarTitle);
 | 
			
		||||
            actionBar.setSubtitle(actionBarSubtitle);
 | 
			
		||||
        }
 | 
			
		||||
        setHasOptionsMenu(true);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
@ -697,6 +705,10 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
        lastSlidePos = 0;
 | 
			
		||||
        if (menuDownload != null) menuDownload.setVisible(false);
 | 
			
		||||
        if (menuDm != null) menuDm.setVisible(false);
 | 
			
		||||
        if (menuProfile != null) menuProfile.setVisible(false);
 | 
			
		||||
        downloadVisible = false;
 | 
			
		||||
        dmVisible = false;
 | 
			
		||||
        profileVisible = false;
 | 
			
		||||
        binding.imageViewer.setController(null);
 | 
			
		||||
        releasePlayer();
 | 
			
		||||
        String currentStoryMediaId = null;
 | 
			
		||||
@ -846,7 +858,6 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
 | 
			
		||||
        final MediaItemType itemType = currentStory.getItemType();
 | 
			
		||||
 | 
			
		||||
        if (menuDownload != null) menuDownload.setVisible(false);
 | 
			
		||||
        url = itemType == MediaItemType.MEDIA_TYPE_IMAGE ? currentStory.getStoryUrl() : currentStory.getVideoUrl();
 | 
			
		||||
 | 
			
		||||
        if (itemType != MediaItemType.MEDIA_TYPE_LIVE) {
 | 
			
		||||
@ -900,9 +911,10 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
        else setupImage();
 | 
			
		||||
 | 
			
		||||
        final ActionBar actionBar = fragmentActivity.getSupportActionBar();
 | 
			
		||||
        actionBarSubtitle = Utils.datetimeParser.format(new Date(currentStory.getTimestamp() * 1000L));
 | 
			
		||||
        if (actionBar != null) {
 | 
			
		||||
            try {
 | 
			
		||||
                actionBar.setSubtitle(Utils.datetimeParser.format(new Date(currentStory.getTimestamp() * 1000L)));
 | 
			
		||||
                actionBar.setSubtitle(actionBarSubtitle);
 | 
			
		||||
            } catch (Exception e) {
 | 
			
		||||
                Log.e(TAG, "refreshStory: ", e);
 | 
			
		||||
            }
 | 
			
		||||
@ -948,11 +960,17 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
                                                                                  final ImageInfo imageInfo,
 | 
			
		||||
                                                                                  final Animatable animatable) {
 | 
			
		||||
                                                          if (menuDownload != null) {
 | 
			
		||||
                                                              downloadVisible = true;
 | 
			
		||||
                                                              menuDownload.setVisible(true);
 | 
			
		||||
                                                          }
 | 
			
		||||
                                                          if (currentStory.canReply() && menuDm != null) {
 | 
			
		||||
                                                              dmVisible = true;
 | 
			
		||||
                                                              menuDm.setVisible(true);
 | 
			
		||||
                                                          }
 | 
			
		||||
                                                          if (!TextUtils.isEmpty(currentStory.getUsername())) {
 | 
			
		||||
                                                              profileVisible = true;
 | 
			
		||||
                                                              menuProfile.setVisible(true);
 | 
			
		||||
                                                          }
 | 
			
		||||
                                                          binding.progressView.setVisibility(View.GONE);
 | 
			
		||||
                                                      }
 | 
			
		||||
                                                  })
 | 
			
		||||
@ -982,9 +1000,18 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
                                        @Nullable final MediaSource.MediaPeriodId mediaPeriodId,
 | 
			
		||||
                                        @NonNull final LoadEventInfo loadEventInfo,
 | 
			
		||||
                                        @NonNull final MediaLoadData mediaLoadData) {
 | 
			
		||||
                if (menuDownload != null) menuDownload.setVisible(true);
 | 
			
		||||
                if (currentStory.canReply() && menuDm != null)
 | 
			
		||||
                if (menuDownload != null) {
 | 
			
		||||
                    downloadVisible = true;
 | 
			
		||||
                    menuDownload.setVisible(true);
 | 
			
		||||
                }
 | 
			
		||||
                if (currentStory.canReply() && menuDm != null) {
 | 
			
		||||
                    dmVisible = true;
 | 
			
		||||
                    menuDm.setVisible(true);
 | 
			
		||||
                }
 | 
			
		||||
                if (!TextUtils.isEmpty(currentStory.getUsername()) && menuProfile != null) {
 | 
			
		||||
                    profileVisible = true;
 | 
			
		||||
                    menuProfile.setVisible(true);
 | 
			
		||||
                }
 | 
			
		||||
                binding.progressView.setVisibility(View.GONE);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
@ -993,9 +1020,18 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
                                      @Nullable final MediaSource.MediaPeriodId mediaPeriodId,
 | 
			
		||||
                                      @NonNull final LoadEventInfo loadEventInfo,
 | 
			
		||||
                                      @NonNull final MediaLoadData mediaLoadData) {
 | 
			
		||||
                if (menuDownload != null) menuDownload.setVisible(true);
 | 
			
		||||
                if (currentStory.canReply() && menuDm != null)
 | 
			
		||||
                if (menuDownload != null) {
 | 
			
		||||
                    downloadVisible = true;
 | 
			
		||||
                    menuDownload.setVisible(true);
 | 
			
		||||
                }
 | 
			
		||||
                if (currentStory.canReply() && menuDm != null) {
 | 
			
		||||
                    dmVisible = true;
 | 
			
		||||
                    menuDm.setVisible(true);
 | 
			
		||||
                }
 | 
			
		||||
                if (!TextUtils.isEmpty(currentStory.getUsername()) && menuProfile != null) {
 | 
			
		||||
                    profileVisible = true;
 | 
			
		||||
                    menuProfile.setVisible(true);
 | 
			
		||||
                }
 | 
			
		||||
                binding.progressView.setVisibility(View.VISIBLE);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
@ -1014,8 +1050,18 @@ public class StoryViewerFragment extends Fragment {
 | 
			
		||||
                                    @NonNull final MediaLoadData mediaLoadData,
 | 
			
		||||
                                    @NonNull final IOException error,
 | 
			
		||||
                                    final boolean wasCanceled) {
 | 
			
		||||
                if (menuDownload != null) menuDownload.setVisible(false);
 | 
			
		||||
                if (menuDm != null) menuDm.setVisible(false);
 | 
			
		||||
                if (menuDownload != null) {
 | 
			
		||||
                    downloadVisible = false;
 | 
			
		||||
                    menuDownload.setVisible(false);
 | 
			
		||||
                }
 | 
			
		||||
                if (menuDm != null) {
 | 
			
		||||
                    dmVisible = false;
 | 
			
		||||
                    menuDm.setVisible(false);
 | 
			
		||||
                }
 | 
			
		||||
                if (menuProfile != null) {
 | 
			
		||||
                    profileVisible = false;
 | 
			
		||||
                    menuProfile.setVisible(false);
 | 
			
		||||
                }
 | 
			
		||||
                binding.progressView.setVisibility(View.GONE);
 | 
			
		||||
            }
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
@ -5,13 +5,18 @@
 | 
			
		||||
    <item
 | 
			
		||||
        android:id="@+id/action_dms"
 | 
			
		||||
        android:icon="@drawable/ic_round_send_24"
 | 
			
		||||
        android:title="@string/action_dms"
 | 
			
		||||
        android:titleCondensed="@string/action_dms"
 | 
			
		||||
        app:showAsAction="always" />
 | 
			
		||||
        android:title="@string/reply_story"
 | 
			
		||||
        android:titleCondensed="@string/reply_story"
 | 
			
		||||
        app:showAsAction="never" />
 | 
			
		||||
    <item
 | 
			
		||||
        android:id="@+id/action_profile"
 | 
			
		||||
        android:title="@string/open_profile"
 | 
			
		||||
        android:titleCondensed="@string/open_profile"
 | 
			
		||||
        app:showAsAction="never" />
 | 
			
		||||
    <item
 | 
			
		||||
        android:id="@+id/action_download"
 | 
			
		||||
        android:icon="@drawable/ic_download"
 | 
			
		||||
        android:title="@string/action_download"
 | 
			
		||||
        android:titleCondensed="@string/action_download"
 | 
			
		||||
        app:showAsAction="always" />
 | 
			
		||||
        app:showAsAction="never" />
 | 
			
		||||
</menu>
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user