feat: use photo info sheet buttons
This commit is contained in:
@@ -56,13 +56,10 @@ import org.joinmastodon.android.GlobalUserPreferences;
|
|||||||
import org.joinmastodon.android.R;
|
import org.joinmastodon.android.R;
|
||||||
import org.joinmastodon.android.api.MastodonAPIController;
|
import org.joinmastodon.android.api.MastodonAPIController;
|
||||||
import org.joinmastodon.android.api.session.AccountSessionManager;
|
import org.joinmastodon.android.api.session.AccountSessionManager;
|
||||||
import org.joinmastodon.android.events.StatusCountersUpdatedEvent;
|
|
||||||
import org.joinmastodon.android.model.Attachment;
|
import org.joinmastodon.android.model.Attachment;
|
||||||
import org.joinmastodon.android.ui.ImageDescriptionSheet;
|
|
||||||
import org.joinmastodon.android.model.Status;
|
import org.joinmastodon.android.model.Status;
|
||||||
import org.joinmastodon.android.ui.M3AlertDialogBuilder;
|
import org.joinmastodon.android.ui.M3AlertDialogBuilder;
|
||||||
import org.joinmastodon.android.utils.FileProvider;
|
import org.joinmastodon.android.utils.FileProvider;
|
||||||
import org.joinmastodon.android.ui.utils.UiUtils;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
@@ -117,7 +114,6 @@ public class PhotoViewer implements ZoomPanView.Listener{
|
|||||||
private TextView videoTimeView;
|
private TextView videoTimeView;
|
||||||
private ImageButton videoPlayPauseButton;
|
private ImageButton videoPlayPauseButton;
|
||||||
private View videoControls;
|
private View videoControls;
|
||||||
private MenuItem imageDescriptionButton;
|
|
||||||
private boolean uiVisible=true;
|
private boolean uiVisible=true;
|
||||||
private AudioManager.OnAudioFocusChangeListener audioFocusListener=this::onAudioFocusChanged;
|
private AudioManager.OnAudioFocusChangeListener audioFocusListener=this::onAudioFocusChanged;
|
||||||
private Runnable uiAutoHider=()->{
|
private Runnable uiAutoHider=()->{
|
||||||
@@ -210,32 +206,6 @@ public class PhotoViewer implements ZoomPanView.Listener{
|
|||||||
toolbarWrap=uiOverlay.findViewById(R.id.toolbar_wrap);
|
toolbarWrap=uiOverlay.findViewById(R.id.toolbar_wrap);
|
||||||
toolbar=uiOverlay.findViewById(R.id.toolbar);
|
toolbar=uiOverlay.findViewById(R.id.toolbar);
|
||||||
toolbar.setNavigationOnClickListener(v->onStartSwipeToDismissTransition(0));
|
toolbar.setNavigationOnClickListener(v->onStartSwipeToDismissTransition(0));
|
||||||
imageDescriptionButton = toolbar.getMenu()
|
|
||||||
.add(R.string.sk_image_description)
|
|
||||||
.setIcon(R.drawable.ic_fluent_image_alt_text_24_regular)
|
|
||||||
.setVisible(attachments.get(pager.getCurrentItem()).description != null
|
|
||||||
&& !attachments.get(pager.getCurrentItem()).description.isEmpty())
|
|
||||||
.setOnMenuItemClickListener(item -> {
|
|
||||||
new ImageDescriptionSheet(activity,attachments.get(pager.getCurrentItem())).show();
|
|
||||||
return true;
|
|
||||||
});
|
|
||||||
imageDescriptionButton.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
|
|
||||||
toolbar.getMenu()
|
|
||||||
.add(R.string.download)
|
|
||||||
.setIcon(R.drawable.ic_fluent_arrow_download_24_regular)
|
|
||||||
.setOnMenuItemClickListener(item -> {
|
|
||||||
saveCurrentFile();
|
|
||||||
return true;
|
|
||||||
})
|
|
||||||
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
|
|
||||||
toolbar.getMenu()
|
|
||||||
.add(R.string.button_share)
|
|
||||||
.setIcon(R.drawable.ic_fluent_share_24_regular)
|
|
||||||
.setOnMenuItemClickListener(item -> {
|
|
||||||
shareCurrentFile();
|
|
||||||
return true;
|
|
||||||
})
|
|
||||||
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
|
|
||||||
if(status!=null)
|
if(status!=null)
|
||||||
toolbar.getMenu().add(R.string.info).setIcon(R.drawable.ic_fluent_info_24_regular).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
|
toolbar.getMenu().add(R.string.info).setIcon(R.drawable.ic_fluent_info_24_regular).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
|
||||||
else
|
else
|
||||||
@@ -446,7 +416,6 @@ public class PhotoViewer implements ZoomPanView.Listener{
|
|||||||
private void onPageChanged(int index){
|
private void onPageChanged(int index){
|
||||||
currentIndex=index;
|
currentIndex=index;
|
||||||
Attachment att=attachments.get(index);
|
Attachment att=attachments.get(index);
|
||||||
imageDescriptionButton.setVisible(att.description != null && !att.description.isEmpty());
|
|
||||||
V.setVisibilityAnimated(videoControls, att.type==Attachment.Type.VIDEO ? View.VISIBLE : View.GONE);
|
V.setVisibilityAnimated(videoControls, att.type==Attachment.Type.VIDEO ? View.VISIBLE : View.GONE);
|
||||||
if(att.type==Attachment.Type.VIDEO){
|
if(att.type==Attachment.Type.VIDEO){
|
||||||
videoSeekBar.setSecondaryProgress(0);
|
videoSeekBar.setSecondaryProgress(0);
|
||||||
@@ -805,7 +774,7 @@ public class PhotoViewer implements ZoomPanView.Listener{
|
|||||||
}
|
}
|
||||||
}else if(id==R.id.btn_share){
|
}else if(id==R.id.btn_share){
|
||||||
if(status!=null){
|
if(status!=null){
|
||||||
UiUtils.openSystemShareSheet(activity, status.url);
|
shareCurrentFile();
|
||||||
}
|
}
|
||||||
}else if(id==R.id.btn_bookmark){
|
}else if(id==R.id.btn_bookmark){
|
||||||
if(status!=null){
|
if(status!=null){
|
||||||
|
|||||||
Reference in New Issue
Block a user