Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(325)

Issue 2024933002: [NTP Snippets] Show a status card when there are no available snippets (Closed)

Created:
4 years, 6 months ago by dgn
Modified:
4 years, 6 months ago
CC:
chromium-reviews, zine-eng+reviews_google.com
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[NTP Snippets] Show a status card when there are no available snippets Introduce a new NTP item type type: Status cards! They show up when there are no snippets to display and let the user know that the NTP is not broken. The current one simply acknowledges that we ran out of snippets and allows to manually fetch more. This CL also refactors some basic card features out of Snippet specific classes. Known issues that will be addressed in future CLs: - Show a different message if the service can't fetch snippets but the user can fix it, for example by enabling sync. - The card should be animated as coming from below BUG=612508 Committed: https://crrev.com/12fae2360889eba5e18e00ce641d95cb4a814159 Cr-Commit-Position: refs/heads/master@{#399202}

Patch Set 1 #

Patch Set 2 : Add shadows, snap behaviour, hide header, slide in animation #

Patch Set 3 : Cleanup #

Patch Set 4 : implement reload, fix some spacing issues #

Total comments: 10

Patch Set 5 : Fix issues #

Total comments: 2

Patch Set 6 : #

Patch Set 7 : Fix tests #

Total comments: 12

Patch Set 8 : Address comments #

Patch Set 9 : #

Total comments: 4

Patch Set 10 : #

Total comments: 5

Patch Set 11 : #

Total comments: 2

Patch Set 12 : rebased and address comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+573 lines, -224 lines) Patch
A chrome/android/java/res/layout/new_tab_page_status_card.xml View 1 2 3 1 chunk +50 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageView.java View 1 2 3 4 5 6 7 7 chunks +11 lines, -6 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardItemDecoration.java View 1 2 3 4 1 chunk +44 lines, -0 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java View 1 2 3 4 5 6 7 8 9 1 chunk +146 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardsLayoutOperations.java View 1 2 3 4 5 6 7 8 9 10 3 chunks +19 lines, -99 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java View 1 2 3 4 5 6 7 8 9 11 chunks +47 lines, -20 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageListItem.java View 2 chunks +8 lines, -1 line 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageRecyclerView.java View 1 2 3 4 5 6 7 3 chunks +36 lines, -7 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageViewHolder.java View 1 2 3 4 5 6 7 8 9 1 chunk +6 lines, -0 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/StatusListItem.java View 1 2 3 4 5 6 7 1 chunk +40 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticleViewHolder.java View 1 2 3 4 5 6 7 8 9 10 11 5 chunks +19 lines, -30 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderListItem.java View 1 2 2 chunks +10 lines, -0 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +109 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetItemDecoration.java View 1 2 1 chunk +0 lines, -52 lines 0 comments Download
M chrome/android/java/strings/android_chrome_strings.grd View 1 2 3 4 5 6 7 8 9 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/android/java_sources.gni View 1 2 3 4 5 6 7 8 9 1 chunk +4 lines, -1 line 0 comments Download
M chrome/android/junit/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapterTest.java View 1 2 3 4 5 6 3 chunks +12 lines, -8 lines 0 comments Download

Messages

Total messages: 26 (9 generated)
dgn
PTAL. Not completely finished. Should be stable enough though, I'm chasing the last bugs and ...
4 years, 6 months ago (2016-06-02 22:50:40 UTC) #5
Bernhard Bauer
https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java (right): https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java#newcode181 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java:181: return new StatusListItem.ViewHolder(StatusListItem.sLayout, parent, this); Why do you need ...
4 years, 6 months ago (2016-06-03 14:12:10 UTC) #6
dgn
https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java (right): https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java#newcode181 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java:181: return new StatusListItem.ViewHolder(StatusListItem.sLayout, parent, this); On 2016/06/03 14:12:10, Bernhard ...
4 years, 6 months ago (2016-06-03 21:02:07 UTC) #7
Bernhard Bauer
https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java (right): https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java#newcode181 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java:181: return new StatusListItem.ViewHolder(StatusListItem.sLayout, parent, this); On 2016/06/03 21:02:07, dgn ...
4 years, 6 months ago (2016-06-07 16:10:08 UTC) #8
dgn
PTAL https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java (right): https://codereview.chromium.org/2024933002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java#newcode181 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java:181: return new StatusListItem.ViewHolder(StatusListItem.sLayout, parent, this); On 2016/06/07 16:10:08, ...
4 years, 6 months ago (2016-06-07 17:34:47 UTC) #10
Bernhard Bauer
https://codereview.chromium.org/2024933002/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java (right): https://codereview.chromium.org/2024933002/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java#newcode66 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java:66: ((NewTabPageView) v.getParent().getParent()).showCardsFrom(mPeekPadding); Could you just pass in the NewTabPageView ...
4 years, 6 months ago (2016-06-08 12:36:00 UTC) #11
dgn
PTAL https://codereview.chromium.org/2024933002/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java (right): https://codereview.chromium.org/2024933002/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java#newcode66 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/CardViewHolder.java:66: ((NewTabPageView) v.getParent().getParent()).showCardsFrom(mPeekPadding); On 2016/06/08 12:36:00, Bernhard Bauer wrote: ...
4 years, 6 months ago (2016-06-09 11:41:14 UTC) #12
Bernhard Bauer
https://codereview.chromium.org/2024933002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java (right): https://codereview.chromium.org/2024933002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java#newcode87 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java:87: ((CardViewHolder) viewHolder).updateTransparencyForDismiss(dX); Could we make this and isDismissable part ...
4 years, 6 months ago (2016-06-09 12:51:44 UTC) #13
dgn
PTAL https://codereview.chromium.org/2024933002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java (right): https://codereview.chromium.org/2024933002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java#newcode87 chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java:87: ((CardViewHolder) viewHolder).updateTransparencyForDismiss(dX); On 2016/06/09 12:51:44, Bernhard Bauer wrote: ...
4 years, 6 months ago (2016-06-09 20:29:55 UTC) #14
Bernhard Bauer
https://codereview.chromium.org/2024933002/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java (right): https://codereview.chromium.org/2024933002/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java#newcode27 chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java:27: private int mMaxSnippetHeaderHeight; Make this final? https://codereview.chromium.org/2024933002/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java#newcode51 chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java:51: public ...
4 years, 6 months ago (2016-06-10 08:42:02 UTC) #15
dgn
PTAL https://codereview.chromium.org/2024933002/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java (right): https://codereview.chromium.org/2024933002/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java#newcode27 chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java:27: private int mMaxSnippetHeaderHeight; On 2016/06/10 08:42:02, Bernhard Bauer ...
4 years, 6 months ago (2016-06-10 11:14:31 UTC) #16
Bernhard Bauer
LGTM, just one final thought that occurred to me: https://codereview.chromium.org/2024933002/diff/200001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java (right): https://codereview.chromium.org/2024933002/diff/200001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java#newcode93 chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java:93: ...
4 years, 6 months ago (2016-06-10 13:42:25 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2024933002/220001
4 years, 6 months ago (2016-06-10 15:13:08 UTC) #20
dgn
Thanks! https://codereview.chromium.org/2024933002/diff/200001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java File chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java (right): https://codereview.chromium.org/2024933002/diff/200001/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java#newcode93 chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetHeaderViewHolder.java:93: float targetAlpha = mHeader.isVisible() ? 1f : 0f; ...
4 years, 6 months ago (2016-06-10 15:15:22 UTC) #21
commit-bot: I haz the power
Committed patchset #12 (id:220001)
4 years, 6 months ago (2016-06-10 16:21:05 UTC) #23
commit-bot: I haz the power
CQ bit was unchecked
4 years, 6 months ago (2016-06-10 16:21:13 UTC) #24
commit-bot: I haz the power
4 years, 6 months ago (2016-06-10 16:22:24 UTC) #26
Message was sent while issue was closed.
Patchset 12 (id:??) landed as
https://crrev.com/12fae2360889eba5e18e00ce641d95cb4a814159
Cr-Commit-Position: refs/heads/master@{#399202}

Powered by Google App Engine
This is Rietveld 408576698