jenkins-bot has submitted this change and it was merged.
Change subject: Make dismissing of cards undoable.
......................................................................
Make dismissing of cards undoable.
Change-Id: I3c64118f06afe2d5fc2314b75bb70aa8125f5394
---
M app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
M app/src/main/java/org/wikipedia/feed/FeedFragment.java
M app/src/main/res/values-qq/strings.xml
M app/src/main/res/values/strings.xml
M app/src/main/res/values/strings_no_translate.xml
5 files changed, 27 insertions(+), 1 deletion(-)
Approvals:
Niedzielski: Looks good to me, approved
jenkins-bot: Verified
diff --git a/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
b/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
index bd78101..17b6b66 100644
--- a/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
+++ b/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
@@ -68,7 +68,7 @@
return currentAge;
}
- public int dismissCard(Card card) {
+ public int dismissCard(@NonNull Card card) {
int position = cards.indexOf(card);
cards.remove(card);
if (updateListener != null) {
@@ -77,6 +77,13 @@
return position;
}
+ public void insertCard(@NonNull Card card, int position) {
+ cards.add(position, card);
+ if (updateListener != null) {
+ updateListener.update(cards);
+ }
+ }
+
protected abstract void buildScript(int age);
protected void addPendingClient(FeedClient client) {
diff --git a/app/src/main/java/org/wikipedia/feed/FeedFragment.java
b/app/src/main/java/org/wikipedia/feed/FeedFragment.java
index 68b2a4f..99a689c 100644
--- a/app/src/main/java/org/wikipedia/feed/FeedFragment.java
+++ b/app/src/main/java/org/wikipedia/feed/FeedFragment.java
@@ -4,6 +4,7 @@
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
+import android.support.design.widget.Snackbar;
import android.support.v4.app.Fragment;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.Toolbar;
@@ -27,6 +28,7 @@
import org.wikipedia.history.HistoryEntry;
import org.wikipedia.settings.Prefs;
import org.wikipedia.util.DimenUtil;
+import org.wikipedia.util.FeedbackUtil;
import java.util.List;
@@ -200,6 +202,7 @@
public void onRequestDismissCard(@NonNull Card card) {
int position = coordinator.dismissCard(card);
funnel.dismissCard(FeedRecyclerAdapter.getCardType(card),
position);
+ showDismissCardUndoSnackbar(card, position);
}
}
@@ -214,4 +217,17 @@
swipeRefreshLayout.setEnabled(verticalOffset == 0);
}
}
+
+ private void showDismissCardUndoSnackbar(final Card card, final int
position) {
+ Snackbar snackbar = FeedbackUtil.makeSnackbar(getView(),
+ getString(R.string.menu_feed_card_dismissed),
+ FeedbackUtil.LENGTH_DEFAULT);
+ snackbar.setAction(R.string.feed_undo_dismiss_card, new
View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ coordinator.insertCard(card, position);
+ }
+ });
+ snackbar.show();
+ }
}
diff --git a/app/src/main/res/values-qq/strings.xml
b/app/src/main/res/values-qq/strings.xml
index fecc747..68a482d 100644
--- a/app/src/main/res/values-qq/strings.xml
+++ b/app/src/main/res/values-qq/strings.xml
@@ -407,4 +407,5 @@
<string name="view_main_page_card_title">Title of a card that the user can
click to view the main page of the Wikipedia project for the current app
language. The \"%s\" symbol is replaced with a translation of the language
name.</string>
<string name="view_main_page_card_subtitle">Message indicating that the user
will be shown the project\'s main page for the current date. The \"%s\" symbol
is replaced with the current date.</string>
<string name="menu_feed_card_dismiss">Menu item used for hiding a certain
item in the list of feed cards.</string>
+ <string name="menu_feed_card_dismissed">Message to inform the user that the
selected item has been hidden.</string>
</resources>
diff --git a/app/src/main/res/values/strings.xml
b/app/src/main/res/values/strings.xml
index 6028e8a..d1878e7 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -323,5 +323,6 @@
<string name="view_main_page_card_title">Today on %s Wikipedia</string>
<string name="view_main_page_card_subtitle">Main page on %s</string>
<string name="menu_feed_card_dismiss">Hide this suggestion</string>
+ <string name="menu_feed_card_dismissed">Suggestion hidden.</string>
<!-- /The Feed -->
</resources>
diff --git a/app/src/main/res/values/strings_no_translate.xml
b/app/src/main/res/values/strings_no_translate.xml
index 79c669e..405f754 100644
--- a/app/src/main/res/values/strings_no_translate.xml
+++ b/app/src/main/res/values/strings_no_translate.xml
@@ -51,6 +51,7 @@
<string name="view_static_card_icon_content_description">Card icon</string>
<string name="view_card_news_title">In the news</string>
<string name="view_card_news_footer_text">More current events</string>
+ <string
name="feed_undo_dismiss_card">@string/reading_list_item_delete_undo</string>
<plurals name="view_continue_reading_card_subtitle">
<item quantity="one">1 day ago</item>
--
To view, visit https://gerrit.wikimedia.org/r/296918
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I3c64118f06afe2d5fc2314b75bb70aa8125f5394
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Dbrant <[email protected]>
Gerrit-Reviewer: BearND <[email protected]>
Gerrit-Reviewer: Brion VIBBER <[email protected]>
Gerrit-Reviewer: Mholloway <[email protected]>
Gerrit-Reviewer: Niedzielski <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits