Handle clicks on posts
This commit is contained in:
@@ -39,7 +39,7 @@ public class FooterStatusDisplayItem extends StatusDisplayItem{
|
||||
return Type.FOOTER;
|
||||
}
|
||||
|
||||
public static class Holder extends BindableViewHolder<FooterStatusDisplayItem>{
|
||||
public static class Holder extends StatusDisplayItem.Holder<FooterStatusDisplayItem>{
|
||||
private final TextView reply, boost, favorite;
|
||||
private final ImageView share;
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{
|
||||
return avaRequest;
|
||||
}
|
||||
|
||||
public static class Holder extends BindableViewHolder<HeaderStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||
public static class Holder extends StatusDisplayItem.Holder<HeaderStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||
private final TextView name, username, timestamp;
|
||||
private final ImageView avatar, more;
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@ public class PhotoStatusDisplayItem extends StatusDisplayItem{
|
||||
return request;
|
||||
}
|
||||
|
||||
public static class Holder extends BindableViewHolder<PhotoStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||
public static class Holder extends StatusDisplayItem.Holder<PhotoStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||
public final ImageView photo;
|
||||
public Holder(Activity activity, ViewGroup parent){
|
||||
super(activity, R.layout.display_item_photo, parent);
|
||||
|
||||
@@ -24,7 +24,7 @@ public class ReblogOrReplyLineStatusDisplayItem extends StatusDisplayItem{
|
||||
return Type.REBLOG_OR_REPLY_LINE;
|
||||
}
|
||||
|
||||
public static class Holder extends BindableViewHolder<ReblogOrReplyLineStatusDisplayItem>{
|
||||
public static class Holder extends StatusDisplayItem.Holder<ReblogOrReplyLineStatusDisplayItem>{
|
||||
private final TextView text;
|
||||
public Holder(Activity activity, ViewGroup parent){
|
||||
super(activity, R.layout.display_item_reblog_or_reply_line, parent);
|
||||
|
||||
@@ -2,7 +2,9 @@ package org.joinmastodon.android.ui.displayitems;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Fragment;
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import org.joinmastodon.android.R;
|
||||
@@ -16,6 +18,7 @@ import java.util.ArrayList;
|
||||
|
||||
import me.grishka.appkit.imageloader.requests.ImageLoaderRequest;
|
||||
import me.grishka.appkit.utils.BindableViewHolder;
|
||||
import me.grishka.appkit.views.UsableRecyclerView;
|
||||
|
||||
public abstract class StatusDisplayItem{
|
||||
public final String parentID;
|
||||
@@ -88,4 +91,23 @@ public abstract class StatusDisplayItem{
|
||||
CARD,
|
||||
FOOTER,
|
||||
}
|
||||
|
||||
public static abstract class Holder<T extends StatusDisplayItem> extends BindableViewHolder<T> implements UsableRecyclerView.Clickable{
|
||||
public Holder(View itemView){
|
||||
super(itemView);
|
||||
}
|
||||
|
||||
public Holder(Context context, int layout, ViewGroup parent){
|
||||
super(context, layout, parent);
|
||||
}
|
||||
|
||||
public String getItemID(){
|
||||
return item.parentID;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClick(){
|
||||
item.parentFragment.onItemClick(item.parentID);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,7 +69,7 @@ public class TextStatusDisplayItem extends StatusDisplayItem implements LinkSpan
|
||||
}
|
||||
}
|
||||
|
||||
public static class Holder extends BindableViewHolder<TextStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||
public static class Holder extends StatusDisplayItem.Holder<TextStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||
private final LinkedTextView text;
|
||||
private CustomEmojiSpan[] emojiSpans;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user