Allow to display video previews separately of image previews
This commit is contained in:
parent
fb93823d16
commit
55d789085d
|
@ -1205,13 +1205,15 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
|||
holder.status_cardview_video.setVisibility(View.GONE);
|
||||
holder.webview_preview.setVisibility(View.VISIBLE);
|
||||
}
|
||||
if( type == RetrieveFeedsAsyncTask.Type.CONTEXT || display_card){
|
||||
boolean display_video_preview = sharedpreferences.getBoolean(Helper.SET_DISPLAY_VIDEO_PREVIEWS, true);
|
||||
if( type == RetrieveFeedsAsyncTask.Type.CONTEXT || display_card || display_video_preview){
|
||||
|
||||
if( type == RetrieveFeedsAsyncTask.Type.CONTEXT)
|
||||
holder.status_cardview_content.setVisibility(View.VISIBLE);
|
||||
else
|
||||
holder.status_cardview_content.setVisibility(View.GONE);
|
||||
if( position == conversationPosition || display_card){
|
||||
|
||||
if( position == conversationPosition || display_card || display_video_preview){
|
||||
|
||||
Card card = status.getReblog()!= null?status.getReblog().getCard():status.getCard();
|
||||
if( card != null){
|
||||
|
@ -1228,7 +1230,7 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
|||
.into(holder.status_cardview_image);
|
||||
}else
|
||||
holder.status_cardview_image.setVisibility(View.GONE);
|
||||
if( !card.getType().equals("video")) {
|
||||
if( !card.getType().equals("video") && display_card) {
|
||||
holder.status_cardview.setVisibility(View.VISIBLE);
|
||||
holder.status_cardview_video.setVisibility(View.GONE);
|
||||
holder.status_cardview.setOnClickListener(new View.OnClickListener() {
|
||||
|
@ -1237,7 +1239,7 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
|||
Helper.openBrowser(context, card.getUrl());
|
||||
}
|
||||
});
|
||||
}else {
|
||||
}else if(card.getType().equals("video") && display_video_preview){
|
||||
Glide.with(holder.status_cardview_image.getContext())
|
||||
.load(card.getImage())
|
||||
.apply(new RequestOptions().transforms(new CenterCrop(), new RoundedCorners(10)))
|
||||
|
@ -1247,9 +1249,9 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
|||
holder.status_cardview_webview.getSettings().setJavaScriptEnabled(true);
|
||||
String html = card.getHtml();
|
||||
String src = card.getUrl();
|
||||
if( html != null){
|
||||
if (html != null) {
|
||||
Matcher matcher = Pattern.compile("src=\"([^\"]+)\"").matcher(html);
|
||||
if( matcher.find())
|
||||
if (matcher.find())
|
||||
src = matcher.group(1);
|
||||
}
|
||||
final String finalSrc = src;
|
||||
|
|
|
@ -128,6 +128,19 @@ public class SettingsFragment extends Fragment {
|
|||
}
|
||||
});
|
||||
|
||||
boolean display_video_preview = sharedpreferences.getBoolean(Helper.SET_DISPLAY_VIDEO_PREVIEWS, true);
|
||||
final CheckBox set_display_video_preview = rootView.findViewById(R.id.set_display_video_preview);
|
||||
set_display_video_preview.setChecked(display_video_preview);
|
||||
|
||||
set_display_video_preview.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
SharedPreferences.Editor editor = sharedpreferences.edit();
|
||||
editor.putBoolean(Helper.SET_DISPLAY_VIDEO_PREVIEWS, set_display_video_preview.isChecked());
|
||||
editor.apply();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
boolean notif_validation = sharedpreferences.getBoolean(Helper.SET_NOTIF_VALIDATION, true);
|
||||
final CheckBox set_share_validation = rootView.findViewById(R.id.set_share_validation);
|
||||
|
|
|
@ -277,6 +277,7 @@ public class Helper {
|
|||
public static final String SET_KEEP_BACKGROUND_PROCESS = "set_keep_background_process";
|
||||
public static final String SET_DISPLAY_EMOJI = "set_display_emoji";
|
||||
public static final String SET_DISPLAY_CARD = "set_display_card";
|
||||
public static final String SET_DISPLAY_VIDEO_PREVIEWS= "set_display_video_previews";
|
||||
public static final String SET_OLD_DIRECT_TIMELINE = "sset_old_direct_timeline";
|
||||
public static final int S_512KO = 1;
|
||||
public static final int S_1MO = 2;
|
||||
|
|
|
@ -174,6 +174,12 @@
|
|||
android:text="@string/set_display_card"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/set_display_video_preview"
|
||||
android:layout_width="wrap_content"
|
||||
android:text="@string/set_display_video_preview"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/set_old_direct_timeline"
|
||||
android:layout_width="wrap_content"
|
||||
|
|
|
@ -174,6 +174,12 @@
|
|||
android:text="@string/set_display_card"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/set_display_video_preview"
|
||||
android:layout_width="wrap_content"
|
||||
android:text="@string/set_display_video_preview"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<CheckBox
|
||||
android:id="@+id/set_old_direct_timeline"
|
||||
android:layout_width="wrap_content"
|
||||
|
|
|
@ -658,6 +658,7 @@
|
|||
<string name="set_display_card">Display previews in all toots</string>
|
||||
<string name="thanks_text_ux">New UX/UI designer</string>
|
||||
<string name="set_old_direct_timeline">Use the direct timeline prior to Mastodon 2.6</string>
|
||||
<string name="set_display_video_preview">Display video previews</string>
|
||||
|
||||
<string-array name="filter_expire">
|
||||
<item>Never</item>
|
||||
|
|
Loading…
Reference in New Issue