Page MenuHomePhabricator

Add a last synced status indicator on reading lists
Closed, ResolvedPublic2 Estimated Story Points

Assigned To
Authored By
RHo
Jun 6 2018, 7:15 PM
Referenced Files
F25653541: Screenshot_1536095723.png
Sep 4 2018, 9:23 PM
F18877419: image.png
Jun 7 2018, 7:24 AM
F18877416: image.png
Jun 7 2018, 7:24 AM
F18877426: image.png
Jun 7 2018, 7:24 AM
F18844612: My lists - empty state (Saved articles, no user-lists).png
Jun 6 2018, 7:15 PM
Tokens
"Like" token, awarded by mpopov.

Description

Problem:

As a synced reading list user, I am unsure if and when syncing was last successfully completed.

Proposed solution:

Add an explicit last synced status indicator in the Reading lists UI with the Refresh sync action.

My lists - empty state (Saved articles, no user-lists).png (1×720 px, 145 KB)

Event Timeline

If we still don't provide the user with the ability to see their lists in a different location, would a time stamp really improve the user's confidence that the lists were in fact synced? Just because the app shows a time stamp, it's still not a guarantee that the list are synced successfully, from the user's point of view. (Are there any other apps that expose the last-sync time to the user?)

Engineering note: the proposed design would necessitate a custom Menu component that supports multi-line items with different styles.

hi @Dbrant - there is value in showing users directly on the interface they are using details about the last sync/backup time, though I am obviously in favour of a web UI as being a useful thing to have beyond a sync checking service.

A few other examples of status shown with a sync/refresh action I've seen in the wild below:

Fitbit:

image.png (200×742 px, 13 KB)

BeyondPod podcast app

image.png (972×754 px, 147 KB)

Google Photos (when tapped, the cloud icon shows a last backup completed message, or else starts backing up photos)

image.png (464×1 px, 303 KB)

LGoto triaged this task as Low priority.Jun 18 2018, 4:18 PM
LGoto moved this task from Needs Triage to UX Debt Backlog on the Wikipedia-Android-App-Backlog board.
Vvjjkkii renamed this task from Add a last synced status indicator on reading lists to uibaaaaaaa.Jul 1 2018, 1:05 AM
Vvjjkkii raised the priority of this task from Low to High.
Vvjjkkii updated the task description. (Show Details)
Vvjjkkii removed a subscriber: Aklapper.
CommunityTechBot renamed this task from uibaaaaaaa to Add a last synced status indicator on reading lists.Jul 2 2018, 12:45 PM
CommunityTechBot lowered the priority of this task from High to Low.
CommunityTechBot updated the task description. (Show Details)
CommunityTechBot added a subscriber: Aklapper.

Change 456777 had a related patch set uploaded (by Cooltey; owner: Cooltey):
[apps/android/wikipedia@master] [WIP] Add a last synced status indicator on reading lists

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

Hi, @RHo

Dose it look good to you if the date format shows in the format Sep 4, 2018, 14:16?
Because when I set in the code to show the date in format d MMM yyyy HH:mm, it won't show the 4 Sep 2018 14:16 format in the overflow menu.

Screenshot_1536095723.png (1×1 px, 264 KB)

hi @cooltey - this format ostensibly seems fine as long as the time stamp is shown, however you may want to check with @Dbrant, since different languages have different ways of showing time and date formats.

Oh but unrelated, the divider line in the mock is too dark, please use the Material theme borders and rules color as stipulated in https://www.mediawiki.org/wiki/Wikimedia_Apps/Android_theme_guidelines (in Light theme this is Black@12%). Thanks!

The date format should work, since it will automatically pass through Android's localization logic.

However, I feel that I must restate my strong objection to the proliferation of custom components, of which this is yet another. Cooltey's patch, while it does the job correctly, adds about 200 lines' worth of a new custom component, which will need to be maintained for the remaining lifetime of the app.

Ahh that is not ideal. @cooltey @Dbrant , can we use an existing timestamp component rather than this custom one? The main thing is to show a timestamp of last synced, the nitty gritty of the display style just needs to be adaptable to local language display formats.

Change 456777 merged by jenkins-bot:
[apps/android/wikipedia@master] Add a last synced status indicator on reading lists

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