Update link preview settings and add some UI polish.

This commit is contained in:
Greyson Parrelli
2020-08-13 13:50:38 -04:00
parent 676356e800
commit ace1b8ee71
20 changed files with 336 additions and 37 deletions

View File

@@ -236,6 +236,11 @@ public class InputPanel extends LinearLayout
this.linkPreview.setLoading();
}
public void setLinkPreviewNoPreview() {
this.linkPreview.setVisibility(View.VISIBLE);
this.linkPreview.setNoPreview();
}
public void setLinkPreview(@NonNull GlideRequests glideRequests, @NonNull Optional<LinkPreview> preview) {
if (preview.isPresent()) {
this.linkPreview.setVisibility(View.VISIBLE);

View File

@@ -21,6 +21,9 @@ import org.thoughtcrime.securesms.util.ThemeUtil;
import okhttp3.HttpUrl;
/**
* The view shown in the compose box that represents the state of the link preview.
*/
public class LinkPreviewView extends FrameLayout {
private static final int TYPE_CONVERSATION = 0;
@@ -33,6 +36,7 @@ public class LinkPreviewView extends FrameLayout {
private View divider;
private View closeButton;
private View spinner;
private View noPreview;
private int type;
private int defaultRadius;
@@ -60,6 +64,7 @@ public class LinkPreviewView extends FrameLayout {
divider = findViewById(R.id.linkpreview_divider);
spinner = findViewById(R.id.linkpreview_progress_wheel);
closeButton = findViewById(R.id.linkpreview_close);
noPreview = findViewById(R.id.linkpreview_no_preview);
defaultRadius = getResources().getDimensionPixelSize(R.dimen.thumbnail_default_radius);
cornerMask = new CornerMask(this);
outliner = new Outliner();
@@ -102,6 +107,15 @@ public class LinkPreviewView extends FrameLayout {
site.setVisibility(GONE);
thumbnail.setVisibility(GONE);
spinner.setVisibility(VISIBLE);
noPreview.setVisibility(INVISIBLE);
}
public void setNoPreview() {
title.setVisibility(GONE);
site.setVisibility(GONE);
thumbnail.setVisibility(GONE);
spinner.setVisibility(GONE);
noPreview.setVisibility(VISIBLE);
}
public void setLinkPreview(@NonNull GlideRequests glideRequests, @NonNull LinkPreview linkPreview, boolean showThumbnail) {
@@ -109,6 +123,7 @@ public class LinkPreviewView extends FrameLayout {
site.setVisibility(VISIBLE);
thumbnail.setVisibility(VISIBLE);
spinner.setVisibility(GONE);
noPreview.setVisibility(GONE);
title.setText(linkPreview.getTitle());