Dbrant has uploaded a new change for review.

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

Change subject: Consolidate long-press handlers for button tooltips.
......................................................................

Consolidate long-press handlers for button tooltips.

Also add a tooltip to the Language button in the search bar.
(Therefore not precisely a "hygiene" patch, but no other functional
changes intended.)

Change-Id: I16698d3cb795e0ad165b6270be5bc99bf459136e
---
M app/src/main/java/org/wikipedia/page/leadimages/ArticleMenuBarView.java
M app/src/main/java/org/wikipedia/search/SearchArticlesFragment.java
M app/src/main/java/org/wikipedia/util/FeedbackUtil.java
M app/src/main/res/layout/activity_page.xml
4 files changed, 24 insertions(+), 30 deletions(-)


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

diff --git 
a/app/src/main/java/org/wikipedia/page/leadimages/ArticleMenuBarView.java 
b/app/src/main/java/org/wikipedia/page/leadimages/ArticleMenuBarView.java
index 0de4454..b051b98 100644
--- a/app/src/main/java/org/wikipedia/page/leadimages/ArticleMenuBarView.java
+++ b/app/src/main/java/org/wikipedia/page/leadimages/ArticleMenuBarView.java
@@ -8,7 +8,6 @@
 import android.support.annotation.ColorInt;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
-import android.text.TextUtils;
 import android.util.AttributeSet;
 import android.view.View;
 import android.widget.ImageView;
@@ -22,7 +21,6 @@
 import butterknife.Bind;
 import butterknife.ButterKnife;
 import butterknife.OnClick;
-import butterknife.OnLongClick;
 
 public class ArticleMenuBarView extends LinearLayout {
     public interface Callback {
@@ -39,6 +37,7 @@
 
     @Bind(R.id.view_article_menu_bar_bookmark) ImageView bookmark;
     @Bind(R.id.view_article_menu_bar_navigate) ImageView navigate;
+    @Bind(R.id.view_article_menu_bar_share) ImageView share;
 
     @NonNull private Callback callback = new DefaultCallback();
 
@@ -108,20 +107,12 @@
         }
     }
 
-    @OnLongClick({R.id.view_article_menu_bar_bookmark,
-            R.id.view_article_menu_bar_share,
-            R.id.view_article_menu_bar_navigate})
-    public boolean onLongClick(View view) {
-        if (!TextUtils.isEmpty(view.getContentDescription())) {
-            FeedbackUtil.showToolbarButtonToast(view);
-            return true;
-        }
-        return false;
-    }
-
     private void init() {
         inflate();
         bind();
+        FeedbackUtil.setToolbarButtonLongPressToast(bookmark);
+        FeedbackUtil.setToolbarButtonLongPressToast(navigate);
+        FeedbackUtil.setToolbarButtonLongPressToast(share);
     }
 
     private void inflate() {
diff --git a/app/src/main/java/org/wikipedia/search/SearchArticlesFragment.java 
b/app/src/main/java/org/wikipedia/search/SearchArticlesFragment.java
index 52543ed..b9a0f6e 100644
--- a/app/src/main/java/org/wikipedia/search/SearchArticlesFragment.java
+++ b/app/src/main/java/org/wikipedia/search/SearchArticlesFragment.java
@@ -133,13 +133,7 @@
                         .create().show();
             }
         });
-        deleteButton.setOnLongClickListener(new View.OnLongClickListener() {
-            @Override
-            public boolean onLongClick(View v) {
-                FeedbackUtil.showToolbarButtonToast(deleteButton);
-                return true;
-            }
-        });
+        FeedbackUtil.setToolbarButtonLongPressToast(deleteButton);
 
         FragmentManager childFragmentManager = getChildFragmentManager();
         recentSearchesFragment = 
(RecentSearchesFragment)childFragmentManager.findFragmentById(
@@ -316,6 +310,7 @@
                     showLangPreferenceDialog();
                 }
             });
+            FeedbackUtil.setToolbarButtonLongPressToast(langButtonContainer);
 
             // set up the SearchView
             if (searchView == null) {
@@ -343,16 +338,9 @@
                         
.findViewById(android.support.v7.appcompat.R.id.search_plate);
                 searchEditPlate.setBackgroundColor(Color.TRANSPARENT);
 
-                final ImageView searchClose = (ImageView) 
searchView.findViewById(
+                ImageView searchClose = (ImageView) searchView.findViewById(
                         android.support.v7.appcompat.R.id.search_close_btn);
-                searchClose.setOnLongClickListener(
-                        new View.OnLongClickListener() {
-                            @Override
-                            public boolean onLongClick(View v) {
-                                
FeedbackUtil.showToolbarButtonToast(searchClose);
-                                return true;
-                            }
-                        });
+                FeedbackUtil.setToolbarButtonLongPressToast(searchClose);
             }
 
             updateZeroChrome();
diff --git a/app/src/main/java/org/wikipedia/util/FeedbackUtil.java 
b/app/src/main/java/org/wikipedia/util/FeedbackUtil.java
index 9ac7d13..2a411ee 100644
--- a/app/src/main/java/org/wikipedia/util/FeedbackUtil.java
+++ b/app/src/main/java/org/wikipedia/util/FeedbackUtil.java
@@ -22,6 +22,7 @@
 public final class FeedbackUtil {
     public static final int LENGTH_DEFAULT = (int) 
TimeUnit.SECONDS.toMillis(5);
     private static final int SNACKBAR_MAX_LINES = 5;
+    private static View.OnLongClickListener TOOLBAR_LONG_CLICK_LISTENER;
 
     public static Snackbar makeSnackbar(View view, CharSequence text, int 
duration) {
         Snackbar snackbar = Snackbar.make(view, text, duration);
@@ -86,7 +87,20 @@
         textView.setError(error);
     }
 
-    public static void showToolbarButtonToast(View view) {
+    public static void setToolbarButtonLongPressToast(View view) {
+        if (TOOLBAR_LONG_CLICK_LISTENER == null) {
+            TOOLBAR_LONG_CLICK_LISTENER = new View.OnLongClickListener() {
+                @Override
+                public boolean onLongClick(View v) {
+                    showToolbarButtonToast(v);
+                    return true;
+                }
+            };
+        }
+        view.setOnLongClickListener(TOOLBAR_LONG_CLICK_LISTENER);
+    }
+
+    private static void showToolbarButtonToast(View view) {
         Toast toast = Toast.makeText(view.getContext(), 
view.getContentDescription(), Toast.LENGTH_SHORT);
         int[] location = new int[2];
         view.getLocationOnScreen(location);
diff --git a/app/src/main/res/layout/activity_page.xml 
b/app/src/main/res/layout/activity_page.xml
index 5e79570..a630791 100644
--- a/app/src/main/res/layout/activity_page.xml
+++ b/app/src/main/res/layout/activity_page.xml
@@ -129,6 +129,7 @@
                                     android:layout_marginEnd="8dp"
                                     
android:id="@+id/search_lang_button_container"
                                     
android:background="?attr/actionBarItemBackground"
+                                    
android:contentDescription="@string/preference_title_language"
                                     android:clickable="true">
                                     <TextView
                                         android:id="@+id/search_lang_button"

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I16698d3cb795e0ad165b6270be5bc99bf459136e
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