NewsBlur icon indicating copy to clipboard operation
NewsBlur copied to clipboard

Android: Saved story tags

Open samuelclay opened this issue 3 years ago • 11 comments

A user brought up that Android allows you to read by saved story tags but not yet save stories with tags. So lets build that. Check out the iOS implementation, but it's basically a popover with a selectable list with counts.

https://forum.newsblur.com/t/android-article-save-issues/8631

samuelclay avatar Mar 12 '21 16:03 samuelclay

@samuelclay I need some guidance on saving/unsaving the story tags with the backend.

Let's say that I have a saved story with 2 tags, test1 and test2. The tag test1 has count = 3 and the tag test2 has count = 1.

In the saved story tags dialog, I decide to remove test1 from this story and add test3 to it. I'm using /reader/mark_story_hash_as_starred/ to send all of the story's user_tags but it looks like it's not overriding all the tags. The tag test1 is still attached to the story but its count is decreased by 1 as expected. Tag test3 does get attached correctly and shows up after remote sync.

What would be the correct steps to make this update on the backend?

sictiru avatar Apr 03 '21 23:04 sictiru

One thing that came to mind is that user_tags[] is an array and there may be a ios/web/android difference here.

This is how iOS send user_tags: https://github.com/samuelclay/NewsBlur/blob/dashboard3/clients/ios/Classes/StoriesCollection.m#L761-L767

And here's how the backend expects user_tags (and idempotently sets them as a complete set): https://github.com/samuelclay/NewsBlur/blob/dashboard3/apps/reader/views.py#L2506-L2512

samuelclay avatar Apr 05 '21 15:04 samuelclay

TODO: Allow user to add tags when the story is saved via the Save button on the story reading view.

sictiru avatar May 05 '21 04:05 sictiru

How close is this?

samuelclay avatar Jul 12 '21 19:07 samuelclay

The TODO item is still pending and I can focus on it now that the UI changes are done. I should have it ready this week.

sictiru avatar Jul 12 '21 20:07 sictiru

I've found this change confusing and even a bit annoying.

  1. I was not aware of this tagging feature so at first I thought the Save button was broken and triggering some other feature which I did not want - seeing a dialog "Saved Tags" and the action "Save Tags" creates a disconnect from "Save Story".

  2. Once I had the time to learn more and understand the feature I was a bit frustrated that the action which I could previously perform in one tap now requires two taps and finger travel.

  3. Deciding I really had no need for this tagging feature I went hunting for a Preference to disable it and found none.

Please give this a preference or make it less intrusive by having the button save the story without tags and then presenting a way to add tags which can be ignored.

One source of inspiration that I think works really well is the Pocket app's Quick Save Actions: https://blog.getpocket.com/2013/12/pocket-5-1-for-android-introduces-a-new-way-to-tag-share-when-you-save/

TheQwerty avatar Jul 23 '21 20:07 TheQwerty

What about a long tap to save without specifying a tag? Also, we should change the “Save Tags” button to just “Save Story”.

samuelclay avatar Aug 06 '21 16:08 samuelclay

I'm willing to give long tap a try.

However, it is not my ideal solution. I find long tap not easily discoverable by users and it seems a less intuitive for quick save.

I'm struggling to think of examples where long tap is used as a shortcut to accomplish less or do it quicker. It seems to me the most common use in Android is showing what an icon button does, followed by context menus or more actions.

TheQwerty avatar Aug 07 '21 02:08 TheQwerty

A possible solution would be to save story on single tap and open custom saved story tags dialog/popup on long press.

sictiru avatar Aug 07 '21 04:08 sictiru

Yeah I agree that long tap is undiscoverable. What about making the dialog half the screen height, so the user can just tap on half of the screen to dismiss, like a popover? This is what we do on web and iOS.

samuelclay avatar Aug 13 '21 12:08 samuelclay

I'm unsure what that would look like on Android - could we get a screenshot from iOS?

On the web I drive Newsblur almost entirely from the keyboard and I'm typically just hammering 's' then 'j' to move to the next unread item. It was only in the past week that I even noticed that it shows a Save Tag form. I like that design and if something like that could be done on Android it would be nice. I'm picturing the Save button saves the story and opens a collapsed section below the story containing the Save Tag form and a Save Tag button.

The other thought I've had is a kind of split button like (excuse the crude ASCII art): [🕓 Save | ➕] So the left portion 'Save' would be the old way and the right '+' would trigger the new dialog. Unfortunately, I haven't been able to find a good example of this out in the wild so it's probably a bad idea. The closest I've been able to find on Android is the Material Design toggle button: image But it would be a bit of an abuse to make it work as I'm thinking.

TheQwerty avatar Aug 13 '21 17:08 TheQwerty