Hashtag timeline

This commit is contained in:
Grishka
2022-03-02 22:39:59 +03:00
parent 9f0b55918d
commit b437f6f3a3
11 changed files with 86 additions and 14 deletions

View File

@@ -270,7 +270,7 @@ public class DiscoverAccountsFragment extends BaseRecyclerFragment<DiscoverAccou
avaRequest=new UrlImageLoaderRequest(account.avatar, V.dp(50), V.dp(50));
if(!TextUtils.isEmpty(account.header))
coverRequest=new UrlImageLoaderRequest(account.header, 1000, 1000);
parsedBio=HtmlParser.parse(account.note, account.emojis, Collections.emptyList(), accountID);
parsedBio=HtmlParser.parse(account.note, account.emojis, Collections.emptyList(), Collections.emptyList(), accountID);
if(account.emojis.isEmpty()){
parsedName=account.displayName;
}else{

View File

@@ -0,0 +1,40 @@
package org.joinmastodon.android.fragments;
import android.app.Activity;
import org.joinmastodon.android.api.requests.timelines.GetHashtagTimeline;
import org.joinmastodon.android.model.Status;
import java.util.List;
import me.grishka.appkit.api.SimpleCallback;
public class HashtagTimelineFragment extends StatusListFragment{
private String hashtag;
@Override
public void onAttach(Activity activity){
super.onAttach(activity);
hashtag=getArguments().getString("hashtag");
setTitle('#'+hashtag);
}
@Override
protected void doLoadData(int offset, int count){
currentRequest=new GetHashtagTimeline(hashtag, offset==0 ? null : getMaxID(), null, count)
.setCallback(new SimpleCallback<>(this){
@Override
public void onSuccess(List<Status> result){
onDataLoaded(result, !result.isEmpty());
}
})
.exec(accountID);
}
@Override
protected void onShown(){
super.onShown();
if(!getArguments().getBoolean("noAutoLoad") && !loaded && !dataLoading)
loadData();
}
}

View File

@@ -375,7 +375,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
name.setText(ssb);
setTitle(ssb);
username.setText('@'+account.acct);
bio.setText(HtmlParser.parse(account.note, account.emojis, Collections.emptyList(), accountID));
bio.setText(HtmlParser.parse(account.note, account.emojis, Collections.emptyList(), Collections.emptyList(), accountID));
followersCount.setText(UiUtils.abbreviateNumber(account.followersCount));
followingCount.setText(UiUtils.abbreviateNumber(account.followingCount));
postsCount.setText(UiUtils.abbreviateNumber(account.statusesCount));
@@ -400,7 +400,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList
fields.add(joined);
for(AccountField field:account.fields){
field.parsedValue=ssb=HtmlParser.parse(field.value, account.emojis, Collections.emptyList(), accountID);
field.parsedValue=ssb=HtmlParser.parse(field.value, account.emojis, Collections.emptyList(), Collections.emptyList(), accountID);
field.valueEmojis=ssb.getSpans(0, ssb.length(), CustomEmojiSpan.class);
ssb=new SpannableStringBuilder(field.name);
HtmlParser.parseCustomEmoji(ssb, account.emojis);

View File

@@ -1,7 +1,6 @@
package org.joinmastodon.android.fragments;
import android.os.Bundle;
import android.util.Log;
import com.squareup.otto.Subscribe;
@@ -12,8 +11,6 @@ import org.joinmastodon.android.model.Poll;
import org.joinmastodon.android.model.Status;
import org.joinmastodon.android.ui.displayitems.FooterStatusDisplayItem;
import org.joinmastodon.android.ui.displayitems.HeaderStatusDisplayItem;
import org.joinmastodon.android.ui.displayitems.PollFooterStatusDisplayItem;
import org.joinmastodon.android.ui.displayitems.PollOptionStatusDisplayItem;
import org.joinmastodon.android.ui.displayitems.StatusDisplayItem;
import org.parceler.Parcels;
@@ -92,7 +89,6 @@ public abstract class StatusListFragment extends BaseStatusListFragment<Status>{
@Subscribe
public void onStatusDeleted(StatusDeletedEvent ev){
Log.i("11", "on status deleted!");
if(!ev.accountID.equals(accountID))
return;
Status status=getStatusByID(ev.id);

View File

@@ -101,7 +101,7 @@ public class TrendingHashtagsFragment extends BaseRecyclerFragment<Hashtag>{
@Override
public void onClick(){
UiUtils.openHashtagTimeline(getActivity(), accountID, item.name);
}
}
}