diff options
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java | 152 |
1 files changed, 0 insertions, 152 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java deleted file mode 100644 index 0af6960d7..000000000 --- a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java +++ /dev/null @@ -1,152 +0,0 @@ -package de.danoeh.antennapod.adapter; - -import android.content.Context; - -import androidx.core.text.TextUtilsCompat; -import androidx.core.view.ViewCompat; -import androidx.fragment.app.Fragment; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.AdapterView; -import android.widget.BaseAdapter; -import android.widget.ImageView; -import android.widget.TextView; - -import java.lang.ref.WeakReference; -import java.text.NumberFormat; -import java.util.Locale; - -import de.danoeh.antennapod.R; -import de.danoeh.antennapod.activity.MainActivity; -import de.danoeh.antennapod.model.feed.Feed; -import de.danoeh.antennapod.core.feed.LocalFeedUpdater; -import de.danoeh.antennapod.core.storage.NavDrawerData; -import de.danoeh.antennapod.fragment.FeedItemlistFragment; -import de.danoeh.antennapod.fragment.SubscriptionFragment; -import jp.shts.android.library.TriangleLabelView; - -/** - * Adapter for subscriptions - */ -public class SubscriptionsAdapter extends BaseAdapter implements AdapterView.OnItemClickListener { - /** the position in the view that holds the add item; 0 is the first, -1 is the last position */ - private static final String TAG = "SubscriptionsAdapter"; - - private final WeakReference<MainActivity> mainActivityRef; - private final ItemAccess itemAccess; - - public SubscriptionsAdapter(MainActivity mainActivity, ItemAccess itemAccess) { - this.mainActivityRef = new WeakReference<>(mainActivity); - this.itemAccess = itemAccess; - } - - @Override - public int getCount() { - return itemAccess.getCount(); - } - - @Override - public Object getItem(int position) { - return itemAccess.getItem(position); - } - - @Override - public boolean hasStableIds() { - return true; - } - - @Override - public long getItemId(int position) { - return ((NavDrawerData.DrawerItem) getItem(position)).id; - } - - @Override - public View getView(int position, View convertView, ViewGroup parent) { - Holder holder; - - if (convertView == null) { - holder = new Holder(); - - LayoutInflater layoutInflater = - (LayoutInflater) mainActivityRef.get().getSystemService(Context.LAYOUT_INFLATER_SERVICE); - convertView = layoutInflater.inflate(R.layout.subscription_item, parent, false); - holder.feedTitle = convertView.findViewById(R.id.txtvTitle); - holder.imageView = convertView.findViewById(R.id.imgvCover); - holder.count = convertView.findViewById(R.id.triangleCountView); - - - convertView.setTag(holder); - } else { - holder = (Holder) convertView.getTag(); - } - - final NavDrawerData.DrawerItem drawerItem = (NavDrawerData.DrawerItem) getItem(position); - if (drawerItem == null) { - return null; - } - - holder.feedTitle.setText(drawerItem.getTitle()); - holder.imageView.setContentDescription(drawerItem.getTitle()); - holder.feedTitle.setVisibility(View.VISIBLE); - - // Fix TriangleLabelView corner for RTL - if (TextUtilsCompat.getLayoutDirectionFromLocale(Locale.getDefault()) - == ViewCompat.LAYOUT_DIRECTION_RTL) { - holder.count.setCorner(TriangleLabelView.Corner.TOP_LEFT); - } - - if (drawerItem.getCounter() > 0) { - holder.count.setPrimaryText(NumberFormat.getInstance().format(drawerItem.getCounter())); - holder.count.setVisibility(View.VISIBLE); - } else { - holder.count.setVisibility(View.GONE); - } - - if (drawerItem.type == NavDrawerData.DrawerItem.Type.FEED) { - Feed feed = ((NavDrawerData.FeedDrawerItem) drawerItem).feed; - boolean textAndImageCombined = feed.isLocalFeed() - && LocalFeedUpdater.getDefaultIconUrl(convertView.getContext()).equals(feed.getImageUrl()); - new CoverLoader(mainActivityRef.get()) - .withUri(feed.getImageUrl()) - .withPlaceholderView(holder.feedTitle, textAndImageCombined) - .withCoverView(holder.imageView) - .load(); - } else { - new CoverLoader(mainActivityRef.get()) - .withResource(R.drawable.ic_folder) - .withPlaceholderView(holder.feedTitle, true) - .withCoverView(holder.imageView) - .load(); - } - return convertView; - } - - @Override - public void onItemClick(AdapterView<?> parent, View view, int position, long id) { - final NavDrawerData.DrawerItem drawerItem = (NavDrawerData.DrawerItem) getItem(position); - if (drawerItem == null) { - return; - } - if (drawerItem.type == NavDrawerData.DrawerItem.Type.FEED) { - Feed feed = ((NavDrawerData.FeedDrawerItem) drawerItem).feed; - Fragment fragment = FeedItemlistFragment.newInstance(feed.getId()); - mainActivityRef.get().loadChildFragment(fragment); - } else if (drawerItem.type == NavDrawerData.DrawerItem.Type.FOLDER) { - Fragment fragment = SubscriptionFragment.newInstance(drawerItem.getTitle()); - mainActivityRef.get().loadChildFragment(fragment); - } - } - - static class Holder { - public TextView feedTitle; - public ImageView imageView; - public TriangleLabelView count; - } - - public interface ItemAccess { - int getCount(); - - NavDrawerData.DrawerItem getItem(int position); - } -} |