add option to always expand content warnings (#1422)

This commit is contained in:
Konrad Pozniak 2019-07-28 19:59:52 +02:00 committed by GitHub
commit 8834c22120
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 742 additions and 210 deletions

View file

@ -29,7 +29,8 @@ import com.keylesspalace.tusky.viewdata.StatusViewData;
public final class ViewDataUtils {
@Nullable
public static StatusViewData.Concrete statusToViewData(@Nullable Status status,
boolean alwaysShowSensitiveMedia) {
boolean alwaysShowSensitiveMedia,
boolean alwaysOpenSpoiler) {
if (status == null) return null;
Status visibleStatus = status.getReblog() == null ? status : status.getReblog();
return new StatusViewData.Builder().setId(status.getId())
@ -42,7 +43,7 @@ public final class ViewDataUtils {
.setInReplyToId(visibleStatus.getInReplyToId())
.setFavourited(visibleStatus.getFavourited())
.setReblogged(visibleStatus.getReblogged())
.setIsExpanded(false)
.setIsExpanded(alwaysOpenSpoiler)
.setIsShowingSensitiveContent(false)
.setMentions(visibleStatus.getMentions())
.setNickname(visibleStatus.getAccount().getUsername())
@ -67,14 +68,16 @@ public final class ViewDataUtils {
}
public static NotificationViewData.Concrete notificationToViewData(Notification notification,
boolean alwaysShowSensitiveData) {
boolean alwaysShowSensitiveData,
boolean alwaysOpenSpoiler) {
return new NotificationViewData.Concrete(
notification.getType(),
notification.getId(),
notification.getAccount(),
statusToViewData(
notification.getStatus(),
alwaysShowSensitiveData
alwaysShowSensitiveData,
alwaysOpenSpoiler
),
false
);