Dbrant has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/354025 )

Change subject: Design tweaks for article-level reading list actions.
......................................................................

Design tweaks for article-level reading list actions.

Bug: T159720
Change-Id: If52fb088f3ed670b91100dea358ae9da838dc7c1
---
M app/src/main/java/org/wikipedia/history/HistoryFragment.java
M app/src/main/java/org/wikipedia/readinglist/ReadingListFragment.java
M app/src/main/java/org/wikipedia/views/PageItemView.java
M app/src/main/res/layout/item_page_list_entry.xml
M app/src/main/res/layout/view_reading_list_page_actions.xml
5 files changed, 53 insertions(+), 40 deletions(-)


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

diff --git a/app/src/main/java/org/wikipedia/history/HistoryFragment.java 
b/app/src/main/java/org/wikipedia/history/HistoryFragment.java
index 5f69e10..2c5b9a8 100644
--- a/app/src/main/java/org/wikipedia/history/HistoryFragment.java
+++ b/app/src/main/java/org/wikipedia/history/HistoryFragment.java
@@ -471,6 +471,9 @@
         @Override
         public void onActionClick(@Nullable IndexedHistoryEntry entry, 
@NonNull PageItemView view) {
         }
+        @Override
+        public void onSecondaryActionClick(@Nullable IndexedHistoryEntry 
entry, @NonNull PageItemView view) {
+        }
     }
 
     private class HistorySearchCallback extends SearchActionModeCallback {
diff --git 
a/app/src/main/java/org/wikipedia/readinglist/ReadingListFragment.java 
b/app/src/main/java/org/wikipedia/readinglist/ReadingListFragment.java
index 6839ef0..6a39276 100644
--- a/app/src/main/java/org/wikipedia/readinglist/ReadingListFragment.java
+++ b/app/src/main/java/org/wikipedia/readinglist/ReadingListFragment.java
@@ -546,7 +546,8 @@
             getView().setSelected(page.isSelected());
             getView().setActionIcon(R.drawable.ic_more_vert_white_24dp);
             
getView().setActionHint(R.string.abc_action_menu_overflow_description);
-            getView().setStatusIcon(R.drawable.ic_download_circle_black_24px, 
!page.isOffline());
+            
getView().setSecondaryActionIcon(R.drawable.ic_download_circle_black_24px, 
!page.isOffline());
+            
getView().setSecondaryActionHint(R.string.reading_list_article_make_offline);
         }
 
         @Override
@@ -638,6 +639,13 @@
             bottomSheetPresenter.show(getChildFragmentManager(),
                     ReadingListItemActionsDialog.newInstance(page, 
readingList));
         }
+
+        @Override
+        public void onSecondaryActionClick(@Nullable ReadingListPage page, 
@NonNull PageItemView view) {
+            if (page != null) {
+                toggleOffline(page);
+            }
+        }
     }
 
     private class SearchCallback extends SearchActionModeCallback {
diff --git a/app/src/main/java/org/wikipedia/views/PageItemView.java 
b/app/src/main/java/org/wikipedia/views/PageItemView.java
index ff0569f..7078be1 100644
--- a/app/src/main/java/org/wikipedia/views/PageItemView.java
+++ b/app/src/main/java/org/wikipedia/views/PageItemView.java
@@ -34,13 +34,14 @@
         boolean onLongClick(@Nullable T item);
         void onThumbClick(@Nullable T item);
         void onActionClick(@Nullable T item, @NonNull PageItemView view);
+        void onSecondaryActionClick(@Nullable T item, @NonNull PageItemView 
view);
     }
 
     @BindView(R.id.page_list_item_title) TextView titleView;
     @BindView(R.id.page_list_item_description) TextView descriptionView;
     @BindView(R.id.page_list_item_image) SimpleDraweeView imageView;
-    @BindView(R.id.page_list_item_action_button) ImageView actionView;
-    @BindView(R.id.page_list_item_status_icon) ImageView statusIconView;
+    @BindView(R.id.page_list_item_action_primary) ImageView primaryActionView;
+    @BindView(R.id.page_list_item_action_secondary) ImageView 
secondaryActionView;
     @BindView(R.id.page_list_item_selected_image) View imageSelectedView;
     @BindView(R.id.page_list_header_text) GoneIfEmptyTextView headerView;
 
@@ -74,17 +75,23 @@
     }
 
     public void setActionIcon(@DrawableRes int id) {
-        actionView.setImageResource(id);
-        actionView.setVisibility(VISIBLE);
+        primaryActionView.setImageResource(id);
+        primaryActionView.setVisibility(VISIBLE);
     }
 
     public void setActionHint(@StringRes int id) {
-        actionView.setContentDescription(getContext().getString(id));
+        primaryActionView.setContentDescription(getContext().getString(id));
     }
 
-    public void setStatusIcon(@DrawableRes int id, boolean show) {
-        statusIconView.setImageResource(id);
-        statusIconView.setVisibility(show ? VISIBLE : GONE);
+    public void setSecondaryActionIcon(@DrawableRes int id, boolean show) {
+        if (show) {
+            secondaryActionView.setImageResource(id);
+        }
+        secondaryActionView.setVisibility(show ? VISIBLE : GONE);
+    }
+
+    public void setSecondaryActionHint(@StringRes int id) {
+        secondaryActionView.setContentDescription(getContext().getString(id));
     }
 
     public void setHeaderText(@Nullable CharSequence text) {
@@ -117,9 +124,15 @@
         }
     }
 
-    @OnClick(R.id.page_list_item_action_button) void onActionClick() {
+    @OnClick(R.id.page_list_item_action_primary) void onActionClick() {
         if (callback != null) {
             callback.onActionClick(item, this);
+        }
+    }
+
+    @OnClick(R.id.page_list_item_action_secondary) void 
onSecondaryActionClick() {
+        if (callback != null) {
+            callback.onSecondaryActionClick(item, this);
         }
     }
 
@@ -130,7 +143,8 @@
         setLayoutParams(new 
ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                 ViewGroup.LayoutParams.WRAP_CONTENT));
 
-        FeedbackUtil.setToolbarButtonLongPressToast(actionView);
+        FeedbackUtil.setToolbarButtonLongPressToast(primaryActionView);
+        FeedbackUtil.setToolbarButtonLongPressToast(secondaryActionView);
     }
 
     private void updateSelectedState() {
diff --git a/app/src/main/res/layout/item_page_list_entry.xml 
b/app/src/main/res/layout/item_page_list_entry.xml
index 37e7b87..c8076eb 100644
--- a/app/src/main/res/layout/item_page_list_entry.xml
+++ b/app/src/main/res/layout/item_page_list_entry.xml
@@ -97,11 +97,13 @@
         </LinearLayout>
 
         <ImageView
-            android:id="@+id/page_list_item_status_icon"
+            android:id="@+id/page_list_item_action_secondary"
             android:layout_width="40dp"
             android:layout_height="40dp"
             android:padding="8dp"
             android:layout_gravity="center_vertical"
+            android:clickable="true"
+            android:background="?attr/selectableItemBackgroundBorderless"
             app:srcCompat="@drawable/ic_download_circle_black_24px"
             android:tint="@color/base50"
             android:contentDescription="@null"
@@ -109,7 +111,7 @@
             tools:visibility="visible"/>
 
         <ImageView
-            android:id="@+id/page_list_item_action_button"
+            android:id="@+id/page_list_item_action_primary"
             android:layout_width="40dp"
             android:layout_height="40dp"
             android:padding="8dp"
diff --git a/app/src/main/res/layout/view_reading_list_page_actions.xml 
b/app/src/main/res/layout/view_reading_list_page_actions.xml
index f5b4d58..9c011f2 100644
--- a/app/src/main/res/layout/view_reading_list_page_actions.xml
+++ b/app/src/main/res/layout/view_reading_list_page_actions.xml
@@ -9,34 +9,20 @@
     tools:layout_height="wrap_content"
     tools:orientation="vertical">
 
-    <LinearLayout
+    <TextView
+        android:id="@+id/reading_list_item_title"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content">
-        <TextView
-            android:id="@+id/reading_list_item_title"
-            android:layout_width="0dp"
-            android:layout_height="54dp"
-            android:layout_weight="1"
-            android:paddingLeft="@dimen/list_item_horizontal_padding"
-            android:paddingRight="@dimen/list_item_horizontal_padding"
-            android:gravity="center_vertical"
-            style="@style/RtlAwareTextView"
-            android:textColor="?attr/link_preview_text_color"
-            android:textSize="16sp"
-            android:fontFamily="sans-serif-medium"
-            android:maxLines="1"
-            android:ellipsize="end"
-            tools:text="Article title"/>
-        <ImageView
-            android:layout_width="24dp"
-            android:layout_height="24dp"
-            android:layout_marginLeft="@dimen/list_item_horizontal_padding"
-            android:layout_marginRight="@dimen/list_item_horizontal_padding"
-            android:layout_gravity="center_vertical"
-            app:srcCompat="@drawable/ic_info_outline_black_24dp"
-            android:tint="?attr/link_preview_text_color"
-            android:contentDescription="@null"/>
-    </LinearLayout>
+        android:layout_height="54dp"
+        android:paddingLeft="@dimen/list_item_horizontal_padding"
+        android:paddingRight="@dimen/list_item_horizontal_padding"
+        android:gravity="center_vertical"
+        style="@style/RtlAwareTextView"
+        android:textColor="?attr/link_preview_text_color"
+        android:textSize="16sp"
+        android:fontFamily="sans-serif-medium"
+        android:maxLines="1"
+        android:ellipsize="end"
+        tools:text="Article title"/>
 
     <View
         android:layout_width="match_parent"

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: If52fb088f3ed670b91100dea358ae9da838dc7c1
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Dbrant <dbr...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to