fix avatars
This commit is contained in:
parent
e51392c0fc
commit
5d1a5f6de9
|
@ -17,6 +17,7 @@ package app.fedilab.android.asynctasks;
|
|||
import android.content.Context;
|
||||
import android.database.sqlite.SQLiteDatabase;
|
||||
import android.os.AsyncTask;
|
||||
import android.util.Log;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.ArrayList;
|
||||
|
@ -29,6 +30,7 @@ import app.fedilab.android.client.Entities.Conversation;
|
|||
import app.fedilab.android.client.Entities.ManageTimelines;
|
||||
import app.fedilab.android.client.Entities.TagTimeline;
|
||||
import app.fedilab.android.client.GNUAPI;
|
||||
import app.fedilab.android.helper.Helper;
|
||||
import app.fedilab.android.sqlite.SearchDAO;
|
||||
import app.fedilab.android.sqlite.Sqlite;
|
||||
import app.fedilab.android.sqlite.TimelinesDAO;
|
||||
|
@ -117,10 +119,8 @@ public class RetrieveMissingFeedsAsyncTask extends AsyncTask<Void, Void, Void> {
|
|||
if (conversations != null && conversations.size() > 0) {
|
||||
for (Conversation conversation : conversations) {
|
||||
app.fedilab.android.client.Entities.Status status = conversation.getLast_status();
|
||||
List<String> ppConversation = new ArrayList<>();
|
||||
for (Account account : conversation.getAccounts())
|
||||
ppConversation.add(account.getAvatar());
|
||||
status.setConversationProfilePicture(ppConversation);
|
||||
List<Account> ppConversation = new ArrayList<>(conversation.getAccounts());
|
||||
status.setConversationAccounts(ppConversation);
|
||||
status.setConversationId(conversation.getId());
|
||||
tempStatus.add(status);
|
||||
}
|
||||
|
@ -166,10 +166,8 @@ public class RetrieveMissingFeedsAsyncTask extends AsyncTask<Void, Void, Void> {
|
|||
if (conversations != null && conversations.size() > 0) {
|
||||
for (Conversation conversation : conversations) {
|
||||
app.fedilab.android.client.Entities.Status status = conversation.getLast_status();
|
||||
List<String> ppConversation = new ArrayList<>();
|
||||
for (Account account : conversation.getAccounts())
|
||||
ppConversation.add(account.getAvatar());
|
||||
status.setConversationProfilePicture(ppConversation);
|
||||
List<Account> ppConversation = new ArrayList<>(conversation.getAccounts());
|
||||
status.setConversationAccounts(ppConversation);
|
||||
status.setConversationId(conversation.getId());
|
||||
tempStatus.add(status);
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ import android.content.Intent;
|
|||
import android.content.SharedPreferences;
|
||||
import android.database.sqlite.SQLiteDatabase;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
|
||||
|
||||
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
|
||||
|
|
|
@ -133,7 +133,7 @@ public class Status implements Parcelable{
|
|||
private boolean showSpoiler = false;
|
||||
|
||||
public Status(){}
|
||||
private List<String> conversationProfilePicture;
|
||||
private List<Account> conversationAccounts;
|
||||
private String webviewURL = null;
|
||||
|
||||
private boolean isBoostAnimated = false, isFavAnimated = false;
|
||||
|
@ -199,7 +199,7 @@ public class Status implements Parcelable{
|
|||
dest.writeString(this.conversationId);
|
||||
dest.writeByte(this.isExpanded ? (byte) 1 : (byte) 0);
|
||||
dest.writeInt(this.numberLines);
|
||||
dest.writeStringList(this.conversationProfilePicture);
|
||||
dest.writeTypedList(this.conversationAccounts);
|
||||
dest.writeString(this.webviewURL);
|
||||
dest.writeByte(this.isBoostAnimated ? (byte) 1 : (byte) 0);
|
||||
dest.writeByte(this.isFavAnimated ? (byte) 1 : (byte) 0);
|
||||
|
@ -265,7 +265,7 @@ public class Status implements Parcelable{
|
|||
this.conversationId = in.readString();
|
||||
this.isExpanded = in.readByte() != 0;
|
||||
this.numberLines = in.readInt();
|
||||
this.conversationProfilePicture = in.createStringArrayList();
|
||||
this.conversationAccounts = in.createTypedArrayList(Account.CREATOR);
|
||||
this.webviewURL = in.readString();
|
||||
this.isBoostAnimated = in.readByte() != 0;
|
||||
this.isFavAnimated = in.readByte() != 0;
|
||||
|
@ -1437,12 +1437,12 @@ public class Status implements Parcelable{
|
|||
this.type = type;
|
||||
}
|
||||
|
||||
public List<String> getConversationProfilePicture() {
|
||||
return conversationProfilePicture;
|
||||
public List<Account> getConversationAccounts() {
|
||||
return conversationAccounts;
|
||||
}
|
||||
|
||||
public void setConversationProfilePicture(List<String> conversationProfilePicture) {
|
||||
this.conversationProfilePicture = conversationProfilePicture;
|
||||
public void setConversationAccounts(List<Account> conversationAccounts) {
|
||||
this.conversationAccounts = conversationAccounts;
|
||||
}
|
||||
|
||||
public String getWebviewURL() {
|
||||
|
|
|
@ -2020,10 +2020,10 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
|||
holder.status_account_profile_boost_by.setVisibility(View.GONE);
|
||||
holder.status_account_profile.setVisibility(View.VISIBLE);
|
||||
}
|
||||
if (type == RetrieveFeedsAsyncTask.Type.CONVERSATION && status.getConversationProfilePicture() != null) {
|
||||
if (type == RetrieveFeedsAsyncTask.Type.CONVERSATION && status.getConversationAccounts() != null) {
|
||||
holder.status_account_profile.setVisibility(View.GONE);
|
||||
holder.conversation_pp.setVisibility(View.VISIBLE);
|
||||
if (status.getConversationProfilePicture().size() == 1) {
|
||||
if (status.getConversationAccounts().size() == 1) {
|
||||
holder.conversation_pp_1.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_1.setScaleType(ImageView.ScaleType.CENTER_CROP);
|
||||
holder.conversation_pp_2_container.setVisibility(View.GONE);
|
||||
|
@ -2031,20 +2031,17 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
|||
holder.conversation_pp_2.setVisibility(View.GONE);
|
||||
holder.conversation_pp_3.setVisibility(View.GONE);
|
||||
holder.conversation_pp_4.setVisibility(View.GONE);
|
||||
Glide.with(context)
|
||||
.load(status.getConversationProfilePicture().get(0))
|
||||
.apply(new RequestOptions().transforms(new FitCenter(), new RoundedCorners(10)))
|
||||
.into(holder.conversation_pp_1);
|
||||
} else if (status.getConversationProfilePicture().size() == 2) {
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(0), holder.conversation_pp_1);
|
||||
} else if (status.getConversationAccounts().size() == 2) {
|
||||
holder.conversation_pp_2_container.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_3_container.setVisibility(View.GONE);
|
||||
holder.conversation_pp_1.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_2.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_3.setVisibility(View.GONE);
|
||||
holder.conversation_pp_4.setVisibility(View.GONE);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(0), holder.conversation_pp_1);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(1), holder.conversation_pp_2);
|
||||
} else if (status.getConversationProfilePicture().size() == 3) {
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(0), holder.conversation_pp_1);
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(1), holder.conversation_pp_2);
|
||||
} else if (status.getConversationAccounts().size() == 3) {
|
||||
holder.conversation_pp_4.setVisibility(View.GONE);
|
||||
holder.conversation_pp_1.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_2.setVisibility(View.VISIBLE);
|
||||
|
@ -2052,20 +2049,20 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct
|
|||
holder.conversation_pp_4.setVisibility(View.GONE);
|
||||
holder.conversation_pp_2_container.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_3_container.setVisibility(View.VISIBLE);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(0), holder.conversation_pp_1);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(1), holder.conversation_pp_2);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(2), holder.conversation_pp_3);
|
||||
} else if (status.getConversationProfilePicture().size() == 4) {
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(0), holder.conversation_pp_1);
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(1), holder.conversation_pp_2);
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(2), holder.conversation_pp_3);
|
||||
} else if (status.getConversationAccounts().size() == 4) {
|
||||
holder.conversation_pp_1.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_2.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_3.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_4.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_2_container.setVisibility(View.VISIBLE);
|
||||
holder.conversation_pp_3_container.setVisibility(View.VISIBLE);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(0), holder.conversation_pp_1);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(1), holder.conversation_pp_2);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(2), holder.conversation_pp_3);
|
||||
Helper.loadGiF(context, status.getConversationProfilePicture().get(3), holder.conversation_pp_4);
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(0), holder.conversation_pp_1);
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(1), holder.conversation_pp_2);
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(2), holder.conversation_pp_3);
|
||||
Helper.loadGiF(context, status.getConversationAccounts().get(3), holder.conversation_pp_4);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -506,10 +506,8 @@ public class DisplayStatusFragment extends Fragment implements OnRetrieveFeedsIn
|
|||
Status status = conversation.getLast_status();
|
||||
if (status != null) {
|
||||
status.setConversationId(conversation.getId());
|
||||
List<String> ppConversation = new ArrayList<>();
|
||||
for (Account account : conversation.getAccounts())
|
||||
ppConversation.add(account.getAvatar());
|
||||
status.setConversationProfilePicture(ppConversation);
|
||||
List<Account> ppConversation = new ArrayList<>(conversation.getAccounts());
|
||||
status.setConversationAccounts(ppConversation);
|
||||
}
|
||||
statusesConversations.add(status);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue