Dbrant has submitted this change and it was merged.
Change subject: Page info dialog header click feedback + clickable
......................................................................
Page info dialog header click feedback + clickable
- Make the TextView into Buttons
- Disable the button that doesn't change the view
- Add selector to provide pressed feedback
- Make clickable by removing isEnabled() {return false;}
Change-Id: I9f38a6dca0f062bfe7cf2349109a340be1b77b01
---
A wikipedia/res/drawable/button_selector_transparent.xml
A wikipedia/res/drawable/button_shape_subtle_gray_highlight.xml
A wikipedia/res/drawable/button_shape_transparent.xml
M wikipedia/res/layout/dialog_page_info.xml
M wikipedia/res/values/colors.xml
M wikipedia/src/main/java/org/wikipedia/page/DisambigListAdapter.java
M wikipedia/src/main/java/org/wikipedia/page/PageInfoDialog.java
7 files changed, 51 insertions(+), 34 deletions(-)
Approvals:
Dbrant: Looks good to me, approved
diff --git a/wikipedia/res/drawable/button_selector_transparent.xml
b/wikipedia/res/drawable/button_selector_transparent.xml
new file mode 100644
index 0000000..4fa032b
--- /dev/null
+++ b/wikipedia/res/drawable/button_selector_transparent.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_pressed="true"
android:drawable="@drawable/button_shape_subtle_gray_highlight" />
+ <item android:drawable="@drawable/button_shape_transparent" />
+</selector>
\ No newline at end of file
diff --git a/wikipedia/res/drawable/button_shape_subtle_gray_highlight.xml
b/wikipedia/res/drawable/button_shape_subtle_gray_highlight.xml
new file mode 100644
index 0000000..c8743e8
--- /dev/null
+++ b/wikipedia/res/drawable/button_shape_subtle_gray_highlight.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="rectangle" android:padding="10dp">
+ <solid android:color="@color/subtle_gray_light"/>
+ <corners android:radius="@dimen/corner_radius_smaller"/>
+</shape>
\ No newline at end of file
diff --git a/wikipedia/res/drawable/button_shape_transparent.xml
b/wikipedia/res/drawable/button_shape_transparent.xml
new file mode 100644
index 0000000..cfc7b8d
--- /dev/null
+++ b/wikipedia/res/drawable/button_shape_transparent.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="rectangle" android:padding="10dp">
+ <solid android:color="@android:color/transparent"/>
+ <corners android:radius="@dimen/corner_radius_smaller"/>
+</shape>
\ No newline at end of file
diff --git a/wikipedia/res/layout/dialog_page_info.xml
b/wikipedia/res/layout/dialog_page_info.xml
index 74ff9c2..577fe9d 100644
--- a/wikipedia/res/layout/dialog_page_info.xml
+++ b/wikipedia/res/layout/dialog_page_info.xml
@@ -19,32 +19,40 @@
android:padding="8dp"
>
- <TextView
+ <Button
android:id="@+id/page_info_similar_titles_heading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_margin="8dp"
+ android:paddingBottom="8dp"
+ android:paddingTop="8dp"
+ android:paddingLeft="16dp"
+ android:paddingRight="16dp"
style="@style/text_heading_gray"
+ android:background="@drawable/button_selector_transparent"
android:text="@string/page_similar_titles" />
<TextView
android:id="@+id/page_info_heading_separator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginBottom="8dp"
- android:layout_marginTop="8dp"
- android:layout_marginLeft="7dp"
- android:layout_marginRight="7dp"
+ android:paddingBottom="8dp"
+ android:paddingTop="8dp"
+ android:paddingLeft="4dp"
+ android:paddingRight="4dp"
style="@style/text_heading_gray"
android:text="|"
tools:ignore="HardcodedText" />
- <TextView
+ <Button
android:id="@+id/page_info_page_issues_heading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_margin="8dp"
+ android:paddingBottom="8dp"
+ android:paddingTop="8dp"
+ android:paddingLeft="16dp"
+ android:paddingRight="16dp"
style="@style/text_heading_gray"
+ android:background="@drawable/button_selector_transparent"
android:text="@string/dialog_page_issues" />
<View
@@ -56,11 +64,13 @@
android:id="@+id/page_info_close"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_margin="8dp"
+ android:minWidth="48dp"
+ android:minHeight="48dp"
+ android:padding="8dp"
android:layout_gravity="center_vertical"
android:gravity="center"
android:src="@drawable/close"
- android:background="@android:color/transparent"
+ android:background="@drawable/button_selector_transparent"
android:contentDescription="@string/dialog_close_description" />
</LinearLayout>
diff --git a/wikipedia/res/values/colors.xml b/wikipedia/res/values/colors.xml
index be9d50d..4060101 100644
--- a/wikipedia/res/values/colors.xml
+++ b/wikipedia/res/values/colors.xml
@@ -42,6 +42,7 @@
<color name="toc_subsection_text_light">#ff898989</color>
<color name="edit_text_light">#ff000000</color>
<color name="abusefilter_background_light">#E8E8E8</color>
+ <color name="subtle_gray_light">#fff0f0f0</color>
<color name="link_dark">#ff2B6FB2</color>
<color name="button_dark">#ff2B6FB2</color>
@@ -55,6 +56,7 @@
<color name="toc_subsection_text_dark">#ffa0a0a0</color>
<color name="edit_text_dark">#ff909090</color>
<color name="abusefilter_background_dark">#505050</color>
+ <color name="subtle_gray_dark">#ff141414</color>
<color name="list_item_highlight">#a033b5e5</color>
<color name="list_item_selected">#d033b5e5</color>
diff --git
a/wikipedia/src/main/java/org/wikipedia/page/DisambigListAdapter.java
b/wikipedia/src/main/java/org/wikipedia/page/DisambigListAdapter.java
index 0eb8b7b..973edd9 100644
--- a/wikipedia/src/main/java/org/wikipedia/page/DisambigListAdapter.java
+++ b/wikipedia/src/main/java/org/wikipedia/page/DisambigListAdapter.java
@@ -154,11 +154,6 @@
private TextView description;
}
- @Override
- public boolean isEnabled(int position) {
- return false; // don't make it appear clickable
- }
-
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = activity.getLayoutInflater();
ViewHolder holder;
@@ -176,16 +171,6 @@
final DisambigResult item = items[position];
holder.title.setText(item.getTitle().getPrefixedText());
-
-// convertView.setOnClickListener(new View.OnClickListener() {
-// @Override
-// public void onClick(View v) {
-// PageTitle title = item.getTitle();
-// HistoryEntry historyEntry = new HistoryEntry(title,
HistoryEntry.SOURCE_INTERNAL_LINK);
-//// dismiss();
-//// activity.displayNewPage(title, historyEntry);
-// }
-// });
String description = null;
String wikidataId = titleWikidataIdMap.get(item.getTitle());
diff --git a/wikipedia/src/main/java/org/wikipedia/page/PageInfoDialog.java
b/wikipedia/src/main/java/org/wikipedia/page/PageInfoDialog.java
index 5654253..ee93729 100644
--- a/wikipedia/src/main/java/org/wikipedia/page/PageInfoDialog.java
+++ b/wikipedia/src/main/java/org/wikipedia/page/PageInfoDialog.java
@@ -3,13 +3,12 @@
import org.wikipedia.PageTitle;
import org.wikipedia.R;
import org.wikipedia.history.HistoryEntry;
-import org.wikipedia.search.FullSearchResult;
import android.graphics.Typeface;
import android.view.View;
+import android.widget.Button;
import android.widget.AdapterView;
import android.widget.FrameLayout;
import android.widget.ListView;
-import android.widget.TextView;
import android.widget.ViewFlipper;
/**
@@ -17,8 +16,8 @@
*/
class PageInfoDialog extends BottomDialog {
private final ViewFlipper flipper;
- private final TextView disambigHeading;
- private final TextView issuesHeading;
+ private final Button disambigHeading;
+ private final Button issuesHeading;
PageInfoDialog(final PageActivity activity, PageInfo pageInfo, int height)
{
super(activity, R.layout.dialog_page_info);
@@ -27,8 +26,8 @@
flipper = (ViewFlipper)
parentView.findViewById(R.id.page_info_flipper);
final ListView disambigList = (ListView)
parentView.findViewById(R.id.disambig_list);
ListView issuesList = (ListView)
parentView.findViewById(R.id.page_issues_list);
- disambigHeading = (TextView)
parentView.findViewById(R.id.page_info_similar_titles_heading);
- issuesHeading = (TextView)
parentView.findViewById(R.id.page_info_page_issues_heading);
+ disambigHeading = (Button)
parentView.findViewById(R.id.page_info_similar_titles_heading);
+ issuesHeading = (Button)
parentView.findViewById(R.id.page_info_page_issues_heading);
View separatorHeading =
parentView.findViewById(R.id.page_info_heading_separator);
View closeButton = parentView.findViewById(R.id.page_info_close);
@@ -41,13 +40,12 @@
parentView.setLayoutParams(new
FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, height));
- disambigList.setAdapter(new DisambigListAdapter(activity,
pageInfo.getDisambigs()));
issuesList.setAdapter(new IssuesListAdapter(activity,
pageInfo.getIssues()));
-
+ disambigList.setAdapter(new DisambigListAdapter(activity,
pageInfo.getDisambigs()));
disambigList.setOnItemClickListener(new
AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int
position, long id) {
- PageTitle title = ((FullSearchResult)
disambigList.getAdapter().getItem(position)).getTitle();
+ PageTitle title = ((DisambigResult)
disambigList.getAdapter().getItem(position)).getTitle();
HistoryEntry historyEntry = new HistoryEntry(title,
HistoryEntry.SOURCE_INTERNAL_LINK);
dismiss();
activity.displayNewPage(title, historyEntry);
@@ -86,7 +84,9 @@
}
disambigHeading.setTypeface(null, Typeface.BOLD);
+ disambigHeading.setEnabled(false);
issuesHeading.setTypeface(null, Typeface.NORMAL);
+ issuesHeading.setEnabled(true);
}
void showIssues() {
@@ -97,6 +97,8 @@
}
disambigHeading.setTypeface(null, Typeface.NORMAL);
+ disambigHeading.setEnabled(true);
issuesHeading.setTypeface(null, Typeface.BOLD);
+ issuesHeading.setEnabled(false);
}
}
--
To view, visit https://gerrit.wikimedia.org/r/172479
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I9f38a6dca0f062bfe7cf2349109a340be1b77b01
Gerrit-PatchSet: 3
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: BearND <[email protected]>
Gerrit-Reviewer: Dbrant <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits