Defer Topic Button - Mark topic unread

theme-component
(Sam Saffron) #1

The problem

Often when browsing discourse I find I want to “get back to something later”, bookmarks are a bit too heavyweight for me cause I don’t want to have to remember to remove the bookmark.

Furthermore my usual workflow centers around keeping “unread 0” so being able to simply add to that list makes it very easy for me not to forget about stuff without resorting to heavyweight “assign” or middle weight “bookmark”

Personally, I use this button multiple times a day, every day mostly from mobile.

What Discourse Defer does?

Discourse defer optionally adds a defer button to your topic actions:

If you click this button, the last post on the topic becomes unread, and topic is added to your unread list:

By default this feature is disabled but administrators can change the default using theme settings:

As an end user you can pick if the feature is on or off in the user / interface section. eg: https://meta.discourse.org/my/preferences/interface

image

Installation

Import the following theme per: How do I install a Theme or Theme Component?

https://github.com/discourse/discourse-defer

Try it out!

Choose “Sam’s Simple Theme” on meta (in hamburger menu). Then head to https://meta.discourse.org/my/preferences/interface and enable the defer button

Caveat

Setting is per device you will have to enable it on every browser you use. We plan to address this long term by adding theme user settings.

32 Likes
Ability to mark any post as unread
(Jeff Atwood) #2

Why not have bookmarks that expire, or bookmarks that remind you, or bookmarks that go away when you visit them? :thinking:

We also have the existing “remind me” in topic timers, as well.

3 Likes
(Sam Saffron) #3

Bookmarks and timers are far more work.

For bookmarks I have to head to the bookmark list to deal with the thing.

For timed reminders I need to work through a big UI.

My #1 use case is, I am on my mobile phone sitting on 2 unreads and I want to write a reply when I get back to my desktop and have a proper keyboard. I defer it. Then when I work through my unreads on desktop it pops up again.

I also use this on desktop but more like once a day, vs 10 times a day. Its handy if I want to write a reply after lunch. So I just kick the can down the road.

This is a power user feature for sure, hence I just made it a theme component, but for me it is indispensable. I do not use bookmarks at all.

8 Likes
(Jeff Atwood) #4

Why not start a reply and save the draft, then use your drafts tab?

It seems like there are 4-6 ways to do this already.

(Sam Saffron) #5

The usefulness of this feature heavily depends on your workflow. If you are an unread hoarder this is 100% useless. The reality from queries I have run is that the majority of forum users are “unread hoarders” once a forum gets busy.

My workflow is:

  1. Head to Meta homepage
  2. Visit first unread
  3. Read till the end
  4. Go to first topic in the “Suggested Topics”
  5. Repeat step (3) until unread == 0 and new == 0

I clear all my new/unread at least once every day on meta.

Bookmarks, do not infiltrate my “suggested topics” so if I use them to “defer” I need to remember to visit them after my above workflow and clear them once I am done. Drafts are the same, I would have visit them.

I guess if we had some user setting for

  • “include recent bookmarks in suggested topics”

and

  • “automatically clear bookmarks once I reply to topic”

It would sort of fill my use case here. Even with that I feel big blue circle is more useful and immediate, but I could probably adapt to use that combo.

6 Likes
(Bart) #6

:100: I use them a lot but it takes many steps. Also, these are not available to regular users if I’m not mistaken?

This looks really nice, I’ll give it a try!

Edit: I don’t see the option in my preferences here on Meta?

Edit 2: as a non-native English speaker I’m always a little confused by the word ‘defer’. Perhaps ‘Mark Unread’ is clearer?

3 Likes
(Régis Hanol) #7

My solution to this is awful: I open the tab in Chrome on my phone so that I can open them on my Desktop.

I’m using the Dark theme, so I’ve added it and will report back in a week.

5 Likes
#8

Oh i’ve done this so many times now…

2 Likes
#9

I like this, though I’d argue the label should just be “Mark Unread”. It’s a lot more intuitive what it means than “Defer”, since marking something as unread is well-understood by anyone who knows how to operate an e-mail client.

3 Likes
(Lee Strickland) #10

This seems really good idea. Further refinement on it is already stated to be needed.

I agree with @rdb that defer is a bit confusing. “Mark Unread” “Read Later” or anything like that seems to be much more common phrasing for what we are accomplishing with this.

I think it would help my own workflow as well. But theme setting not per device setting would be much more convenient as marked in OP.
:heart: :heart:

1 Like
#11

This is like adding a web page to favorites on browser to read after. Good idea, thanks :slightly_smiling_face:

(Sam Saffron) #12

I much prefer less words, so I am keeping the default “Defer” that said if you install the component thanks to @david it is trivial to rename the button, just plug in your theme translation in the component ui.

7 Likes
#13

I’ve been using this for months now and I find it invaluable, esp when I’m on the run. A quick defer is a hell of a lot less work than setting a timer.

7 Likes
(Southpaw) #14

Hi @sam,

I think it’s interesting to see in this discussion that the usefulness of this component depends on each person’s workflow style, and I love that Discourse has the flexibility to recognize that we don’t all work or think the same way.

I was so excited to see this, and I installed it right away, but it turns out it’s not quite all the way there for me.

For the Community I manage, I work from my inbox. That nagging notification icon sticking out of the top of my avatar is my reminder that something important still needs my attention. Once I’ve viewed my inbox and that notification clears, the highlighted list in my inbox remains, to remind me which things I still need to deal with. For other forums I participate in, I work first from my inbox, then in a manner similar to your workflow.

Is there any chance that if the topic were listed in /u/[username]/notifications, then the Defer button could restore the highlight to that item, as if it were still unread? Bonus points if it also lights up a new notification icon above my avatar. :slight_smile:

2 Likes
(Sam Saffron) #15

Just to clarify, you are talking about this?

image

You would like the “last like/reply” you got on the topic to also go opaque blue when you hit defer?

I guess my question is how far would we take this?

  1. All notifications on the topic for all time become unread?

  2. Last notification on the topic becomes unread?

(2) is workable not a huge change and good default behavior.

Increasing unread blue count though is very tricky, we clear this thing on click and technically you can defer topics with no notifications. I am not sure we can do anything easy here.


Side questions, what number of “unread” topics do you sit on? Do you track everything right away when you enter it?

3 Likes
(Southpaw) #16

Hm. Well, it looks kind of vain to ask for something that would reset the likes to unread, I guess!
By “inbox” yes, I mean this:
image
Sorry, I think “inbox” was nomenclature from our past platform. :see_no_evil:

I think I had option two in mind. All it would take would be one post in the topic still notifying me as unread for me to remember I need to revisit it.

That’s a valid answer. I seem to be quite a minority on this, and there’s no sense in engineering something very difficult that will have only a tiny experience impact.


It depends. Most of the time none to few, but there are those days when it’s quittin’ time, Mr. Southpaw is waiting in the office parking lot, and gosh-darn-it I clicked into a topic that’s going to take me 45 minutes to deal with. So now I cram a note to myself in my bag, in the hopes I’ll remember to revisit the topic when I get home. For those, I always wish I could “undo” having “read” the post.
Sometimes though, when I’m wrapping up a Community challenge and have a dozen or more winners I’m DMing for prize distribution, I leave all my DMs unread until I have time to process all the shipping labels at once. When I open one by mistake and have no way to reset it as unread, I create the shipping label then and there, for fear I’ll end up overlooking someone.

I guess the answer is yes, because I feel like I have to, since I’ve cleared the reminder that it needs my attention.

2 Likes
(Jeff Atwood) #17

:rofl: :rofl: :rofl: We don’t judge!

4 Likes
(Sam Saffron) #18

Its such a small change and it improves your quality of life so I took care of it here:

Hopefully if fits your workflow better.

Sadly we can not muck with the “blue” count safely it is just too much of a nest, we would need to inject a new notification which is not ideal to say the least.

9 Likes
(Tim Jefferies) #19

I installed this and enabled it. In the preview it works, but not on either the light or dark themes?

(Jay Pfaffman) #20

Did you add it as a component to the light and dark themes?

1 Like