Keep 'Dismiss New' from clearing topics you haven't seen yet

AI-generated summary

In a discussion titled ‘Keep \u2018Dismiss New\u2019 from clearing topics you haven\u2019t seen yet’ under the Feature category, kpfleming reports an issue: while browsing the \u2018New\u2019 tab with ~90 threads, a new thread appeared at the top with a \u20181 New thread\u2019 banner. Without clicking it, they scrolled to the bottom and clicked \u2018Dismiss New\u2019, expecting only unseen threads to remain marked as new. Instead, all threads were marked as read, including those not yet viewed. riking clarifies this is by design: \u2018Dismiss New\u2019 sets the \u2018new topic ignore time\u2019 to the current moment, marking all threads as read from that point. kpfleming acknowledges this but proposes a behavior change: the \u2018new topic ignore time\u2019 should only be set when the user explicitly clicks the \u2018New\u2019 banner or otherwise interacts with the new thread, preserving the unread status of threads not yet viewed. This would prevent unintended marking of unread threads as read during passive browsing.

Today I had about 90 threads in the ‘New’ tab. I was reading through the ones I found interesting, scrolling down the page to review the older ones.

During this time, another thread was posted in the forum, and the top of the page got the ‘1 New thread. Click here to show.’ banner. I did not click it, but instead kept scrolling until I got to the bottom of the page. At that point, I clicked ‘Dismiss New’, partially to see what would happen, and the result was ungood: all New threads were marked to be ignored, including the one I had never seen… or at least I think so, because when the page refreshed there were no New threads at all.

This behavior is to-specification: when you click Dismiss New, your “new topic ignore time” is set to Now.

Doesn’t mean it’s the best behavior, but the code is functioning correctly.

I understand that, so let’s consider this a request to change the behavior :smile:

The ‘new topic ignore time’ could be set to the time the page was delivered to the browser, not the time when the button is clicked. I believe that would solve this problem.

2개의 좋아요