parent
0077388c65
commit
41233a837b
54 changed files with 1266 additions and 1042 deletions
|
|
@ -15,7 +15,6 @@
|
|||
|
||||
package com.keylesspalace.tusky.util;
|
||||
|
||||
import android.arch.core.util.Function;
|
||||
import android.support.annotation.Nullable;
|
||||
|
||||
import com.keylesspalace.tusky.entity.Notification;
|
||||
|
|
@ -23,16 +22,14 @@ import com.keylesspalace.tusky.entity.Status;
|
|||
import com.keylesspalace.tusky.viewdata.NotificationViewData;
|
||||
import com.keylesspalace.tusky.viewdata.StatusViewData;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Created by charlag on 12/07/2017.
|
||||
*/
|
||||
|
||||
public final class ViewDataUtils {
|
||||
@Nullable
|
||||
public static StatusViewData.Concrete statusToViewData(@Nullable Status status) {
|
||||
public static StatusViewData.Concrete statusToViewData(@Nullable Status status,
|
||||
boolean alwaysShowSensitiveMedia) {
|
||||
if (status == null) return null;
|
||||
Status visibleStatus = status.reblog == null ? status : status.reblog;
|
||||
return new StatusViewData.Builder().setId(status.id)
|
||||
|
|
@ -51,6 +48,7 @@ public final class ViewDataUtils {
|
|||
.setNickname(visibleStatus.account.username)
|
||||
.setRebloggedAvatar(status.reblog == null ? null : status.account.avatar)
|
||||
.setSensitive(visibleStatus.sensitive)
|
||||
.setIsShowingSensitiveContent(alwaysShowSensitiveMedia || !visibleStatus.sensitive)
|
||||
.setSpoilerText(visibleStatus.spoilerText)
|
||||
.setRebloggedByUsername(status.reblog == null ? null : status.account.username)
|
||||
.setUserFullName(visibleStatus.account.getDisplayName())
|
||||
|
|
@ -62,37 +60,9 @@ public final class ViewDataUtils {
|
|||
.createStatusViewData();
|
||||
}
|
||||
|
||||
public static List<StatusViewData> statusListToViewDataList(List<Status> statuses) {
|
||||
List<StatusViewData> viewDatas = new ArrayList<>(statuses.size());
|
||||
for (Status s : statuses) {
|
||||
viewDatas.add(statusToViewData(s));
|
||||
}
|
||||
return viewDatas;
|
||||
}
|
||||
|
||||
public static Function<Status, StatusViewData.Concrete> statusMapper() {
|
||||
return statusMapper;
|
||||
}
|
||||
|
||||
public static NotificationViewData.Concrete notificationToViewData(Notification notification) {
|
||||
public static NotificationViewData.Concrete notificationToViewData(Notification notification, boolean alwaysShowSensitiveData) {
|
||||
return new NotificationViewData.Concrete(notification.type, notification.id, notification.account,
|
||||
statusToViewData(notification.status));
|
||||
statusToViewData(notification.status, alwaysShowSensitiveData), false);
|
||||
}
|
||||
|
||||
public static List<NotificationViewData> notificationListToViewDataList(
|
||||
List<Notification> notifications) {
|
||||
List<NotificationViewData> viewDatas = new ArrayList<>(notifications.size());
|
||||
for (Notification n : notifications) {
|
||||
viewDatas.add(notificationToViewData(n));
|
||||
}
|
||||
return viewDatas;
|
||||
}
|
||||
|
||||
private static final Function<Status, StatusViewData.Concrete> statusMapper =
|
||||
new Function<Status, StatusViewData.Concrete>() {
|
||||
@Override
|
||||
public StatusViewData.Concrete apply(Status input) {
|
||||
return ViewDataUtils.statusToViewData(input);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue