Niedzielski has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/306818

Change subject: Hygiene: remove redundant Feed code
......................................................................

Hygiene: remove redundant Feed code

Change-Id: I979f55a5d6fde41bc83698079ef66d9ec2929ccb
---
M 
app/src/main/java/org/wikipedia/feed/becauseyouread/BecauseYouReadCardView.java
M app/src/main/java/org/wikipedia/feed/mostread/MostReadCardView.java
M app/src/main/java/org/wikipedia/feed/view/ListCardView.java
D app/src/main/java/org/wikipedia/feed/view/PageTitleListCardView.java
A app/src/main/java/org/wikipedia/feed/view/PageTitleRecyclerAdapter.java
M app/src/main/res/layout/view_article_header.xml
M app/src/main/res/layout/view_list_card.xml
7 files changed, 35 insertions(+), 118 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia 
refs/changes/18/306818/1

diff --git 
a/app/src/main/java/org/wikipedia/feed/becauseyouread/BecauseYouReadCardView.java
 
b/app/src/main/java/org/wikipedia/feed/becauseyouread/BecauseYouReadCardView.java
index 70c0bda..bbce74c 100644
--- 
a/app/src/main/java/org/wikipedia/feed/becauseyouread/BecauseYouReadCardView.java
+++ 
b/app/src/main/java/org/wikipedia/feed/becauseyouread/BecauseYouReadCardView.java
@@ -7,18 +7,19 @@
 import android.view.View;
 
 import org.wikipedia.R;
-import org.wikipedia.feed.view.FeedViewCallback;
 import org.wikipedia.feed.view.CardHeaderView;
 import org.wikipedia.feed.view.CardLargeHeaderView;
+import org.wikipedia.feed.view.FeedViewCallback;
+import org.wikipedia.feed.view.ListCardView;
 import org.wikipedia.feed.view.PageTitleListCardItemView;
-import org.wikipedia.feed.view.PageTitleListCardView;
+import org.wikipedia.feed.view.PageTitleRecyclerAdapter;
 import org.wikipedia.history.HistoryEntry;
 import org.wikipedia.views.DefaultViewHolder;
 import org.wikipedia.views.ItemTouchHelperSwipeAdapter;
 
 import java.util.List;
 
-public class BecauseYouReadCardView extends PageTitleListCardView
+public class BecauseYouReadCardView extends ListCardView
         implements ItemTouchHelperSwipeAdapter.SwipeableView {
 
     public BecauseYouReadCardView(Context context) {
@@ -64,7 +65,7 @@
         }
     }
 
-    private static class RecyclerAdapter extends 
PageTitleListCardView.RecyclerAdapter<BecauseYouReadItemCard> {
+    private static class RecyclerAdapter extends 
PageTitleRecyclerAdapter<BecauseYouReadItemCard> {
         @Nullable private FeedViewCallback callback;
 
         RecyclerAdapter(@NonNull List<BecauseYouReadItemCard> items, @Nullable 
FeedViewCallback callback) {
diff --git 
a/app/src/main/java/org/wikipedia/feed/mostread/MostReadCardView.java 
b/app/src/main/java/org/wikipedia/feed/mostread/MostReadCardView.java
index 99bd603..18c1898 100644
--- a/app/src/main/java/org/wikipedia/feed/mostread/MostReadCardView.java
+++ b/app/src/main/java/org/wikipedia/feed/mostread/MostReadCardView.java
@@ -5,17 +5,18 @@
 import android.support.annotation.Nullable;
 
 import org.wikipedia.R;
-import org.wikipedia.feed.view.FeedViewCallback;
 import org.wikipedia.feed.view.CardHeaderView;
+import org.wikipedia.feed.view.FeedViewCallback;
+import org.wikipedia.feed.view.ListCardView;
 import org.wikipedia.feed.view.PageTitleListCardItemView;
-import org.wikipedia.feed.view.PageTitleListCardView;
+import org.wikipedia.feed.view.PageTitleRecyclerAdapter;
 import org.wikipedia.history.HistoryEntry;
 import org.wikipedia.views.DefaultViewHolder;
 import org.wikipedia.views.ItemTouchHelperSwipeAdapter;
 
 import java.util.List;
 
-public class MostReadCardView extends PageTitleListCardView
+public class MostReadCardView extends ListCardView
         implements ItemTouchHelperSwipeAdapter.SwipeableView {
     public MostReadCardView(Context context) {
         super(context);
@@ -37,7 +38,7 @@
         header(header);
     }
 
-    private static class RecyclerAdapter extends 
PageTitleListCardView.RecyclerAdapter<MostReadItemCard> {
+    private static class RecyclerAdapter extends 
PageTitleRecyclerAdapter<MostReadItemCard> {
         @Nullable private FeedViewCallback callback;
 
         RecyclerAdapter(@NonNull List<MostReadItemCard> items, @Nullable 
FeedViewCallback callback) {
diff --git a/app/src/main/java/org/wikipedia/feed/view/ListCardView.java 
b/app/src/main/java/org/wikipedia/feed/view/ListCardView.java
index 4312596..50ef6b8 100644
--- a/app/src/main/java/org/wikipedia/feed/view/ListCardView.java
+++ b/app/src/main/java/org/wikipedia/feed/view/ListCardView.java
@@ -6,16 +6,11 @@
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
-import android.view.ViewGroup;
 
 import org.wikipedia.R;
 import org.wikipedia.util.ResourceUtil;
-import org.wikipedia.views.DefaultRecyclerAdapter;
-import org.wikipedia.views.DefaultViewHolder;
 import org.wikipedia.views.DrawableItemDecoration;
 import org.wikipedia.views.ViewUtil;
-
-import java.util.List;
 
 import butterknife.BindView;
 import butterknife.ButterKnife;
@@ -23,8 +18,6 @@
 public abstract class ListCardView extends FeedCardView {
     @BindView(R.id.view_list_card_header) View headerView;
     @BindView(R.id.view_list_card_large_header) View largeHeaderView;
-    @BindView(R.id.view_list_card_footer) View footerView;
-
     @BindView(R.id.view_list_card_list) RecyclerView recyclerView;
 
     public ListCardView(Context context) {
@@ -35,7 +28,7 @@
         initRecycler();
     }
 
-    protected void set(@Nullable RecyclerAdapter<?> adapter) {
+    protected void set(@Nullable RecyclerView.Adapter<?> adapter) {
         recyclerView.setAdapter(adapter);
     }
 
@@ -55,21 +48,10 @@
         largeHeaderView = view;
     }
 
-    protected void initRecycler() {
+    private void initRecycler() {
         recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
         recyclerView.addItemDecoration(new DrawableItemDecoration(getContext(),
                 ResourceUtil.getThemedAttributeId(getContext(), 
R.attr.list_separator_drawable), true));
-    }
-
-    protected abstract static class RecyclerAdapter<T>
-            extends DefaultRecyclerAdapter<T, ListCardItemView> {
-        protected RecyclerAdapter(@NonNull List<T> items) {
-            super(items);
-        }
-
-        @Override public DefaultViewHolder<ListCardItemView> 
onCreateViewHolder(ViewGroup parent,
-                                                                               
 int viewType) {
-            return new DefaultViewHolder<>(new 
ListCardItemView(parent.getContext()));
-        }
+        recyclerView.setNestedScrollingEnabled(false);
     }
 }
\ No newline at end of file
diff --git 
a/app/src/main/java/org/wikipedia/feed/view/PageTitleListCardView.java 
b/app/src/main/java/org/wikipedia/feed/view/PageTitleListCardView.java
deleted file mode 100644
index df66ba2..0000000
--- a/app/src/main/java/org/wikipedia/feed/view/PageTitleListCardView.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package org.wikipedia.feed.view;
-
-import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.view.View;
-import android.view.ViewGroup;
-
-import org.wikipedia.R;
-import org.wikipedia.util.ResourceUtil;
-import org.wikipedia.views.DefaultRecyclerAdapter;
-import org.wikipedia.views.DefaultViewHolder;
-import org.wikipedia.views.DrawableItemDecoration;
-import org.wikipedia.views.ViewUtil;
-
-import java.util.List;
-
-import butterknife.BindView;
-import butterknife.ButterKnife;
-
-public abstract class PageTitleListCardView extends FeedCardView {
-    @BindView(R.id.view_list_card_header) View headerView;
-    @BindView(R.id.view_list_card_large_header) View largeHeaderView;
-    @BindView(R.id.view_list_card_footer) View footerView;
-    @BindView(R.id.view_list_card_list) RecyclerView recyclerView;
-
-    public PageTitleListCardView(Context context) {
-        super(context);
-
-        inflate(getContext(), R.layout.view_list_card, this);
-        ButterKnife.bind(this);
-        initRecycler();
-    }
-
-    protected void set(@Nullable RecyclerAdapter<?> adapter) {
-        recyclerView.setAdapter(adapter);
-    }
-
-    protected void update() {
-        if (recyclerView.getAdapter() != null) {
-            recyclerView.getAdapter().notifyDataSetChanged();
-        }
-    }
-
-    protected void header(@NonNull View view) {
-        ViewUtil.replace(headerView, view);
-        headerView = view;
-    }
-
-    protected void largeHeader(@NonNull View view) {
-        ViewUtil.replace(largeHeaderView, view);
-        largeHeaderView = view;
-    }
-
-    protected void footer(@NonNull View view) {
-        ViewUtil.replace(footerView, view);
-        footerView = view;
-    }
-
-    private void initRecycler() {
-        recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
-        recyclerView.addItemDecoration(new DrawableItemDecoration(getContext(),
-                ResourceUtil.getThemedAttributeId(getContext(), 
R.attr.list_separator_drawable), true));
-        recyclerView.setNestedScrollingEnabled(false);
-    }
-
-    protected abstract static class RecyclerAdapter<T>
-            extends DefaultRecyclerAdapter<T, PageTitleListCardItemView> {
-        protected RecyclerAdapter(@NonNull List<T> items) {
-            super(items);
-        }
-
-        @Override public DefaultViewHolder<PageTitleListCardItemView> 
onCreateViewHolder(ViewGroup parent,
-                                                                               
 int viewType) {
-            return new DefaultViewHolder<>(new 
PageTitleListCardItemView(parent.getContext()));
-        }
-    }
-}
diff --git 
a/app/src/main/java/org/wikipedia/feed/view/PageTitleRecyclerAdapter.java 
b/app/src/main/java/org/wikipedia/feed/view/PageTitleRecyclerAdapter.java
new file mode 100644
index 0000000..23cecc3
--- /dev/null
+++ b/app/src/main/java/org/wikipedia/feed/view/PageTitleRecyclerAdapter.java
@@ -0,0 +1,21 @@
+package org.wikipedia.feed.view;
+
+import android.support.annotation.NonNull;
+import android.view.ViewGroup;
+
+import org.wikipedia.views.DefaultRecyclerAdapter;
+import org.wikipedia.views.DefaultViewHolder;
+
+import java.util.List;
+
+public abstract class PageTitleRecyclerAdapter<T>
+        extends DefaultRecyclerAdapter<T, PageTitleListCardItemView> {
+    public PageTitleRecyclerAdapter(@NonNull List<T> items) {
+        super(items);
+    }
+
+    @Override public DefaultViewHolder<PageTitleListCardItemView> 
onCreateViewHolder(ViewGroup parent,
+                                                                               
      int viewType) {
+        return new DefaultViewHolder<>(new 
PageTitleListCardItemView(parent.getContext()));
+    }
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/view_article_header.xml 
b/app/src/main/res/layout/view_article_header.xml
index 8daaebd..f3a6998 100644
--- a/app/src/main/res/layout/view_article_header.xml
+++ b/app/src/main/res/layout/view_article_header.xml
@@ -34,7 +34,7 @@
             android:maxLines="5"
             android:ellipsize="end"
             tools:text="Title\nSubtitle" />
-        
+
         <View
             android:layout_width="53.5dp"
             android:layout_height="1dp"
diff --git a/app/src/main/res/layout/view_list_card.xml 
b/app/src/main/res/layout/view_list_card.xml
index a61147f..3184108 100644
--- a/app/src/main/res/layout/view_list_card.xml
+++ b/app/src/main/res/layout/view_list_card.xml
@@ -22,12 +22,4 @@
         android:layout_height="wrap_content"
         android:layout_below="@id/view_list_card_large_header" />
 
-    <View
-        android:id="@+id/view_list_card_footer"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_below="@id/view_list_card_list"
-        android:layout_margin="@dimen/view_list_card_item_margin"
-        android:visibility="gone" />
-
 </RelativeLayout>
\ No newline at end of file

-- 
To view, visit https://gerrit.wikimedia.org/r/306818
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I979f55a5d6fde41bc83698079ef66d9ec2929ccb
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Niedzielski <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to