Page MenuHomePhabricator

Flow ToC issues when ordered by Recently Active Topics
Closed, ResolvedPublic

Description

At http://flow-tests.wmflabs.org/wiki/Talk:Sandbox
in the ToC, when using Recently Active Topics ordering,

  1. Clicking a topic that hasn't been loaded yet, does nothing.
  2. Once I've scrolled down the page a little, the ToC just jitters when I try to scroll anywhere within it. (#2 is believed to be a duplicate of T85571: TOC can lock (preventing scrolling down or up) even when there are remaining topics (ToC v2) which is fixed in Gerrit).

Event Timeline

Quiddity raised the priority of this task from to Medium.
Quiddity updated the task description. (Show Details)
Quiddity subscribed.

For #2, I'm not seeing the jittering -- I think that may be fixed in the current version on flow-tests.

#1 is definitely still happening. I think this needs to be part of the MVP for shipping...

For #2, I'm not seeing the jittering -- I think that may be fixed in the current version on flow-tests.

Agreed, I think it is the same as T85571: TOC can lock (preventing scrolling down or up) even when there are remaining topics (ToC v2) .

#1 is definitely still happening. I think this needs to be part of the MVP for shipping...

Also agreed. This is what I've been working on.

It's currently doing requests without sortby (thus defaulting to user), like:

http://flow-tests.wmflabs.org/w/api.php?action=flow&format=jsonfm&submodule=view-topiclist&vtloffset-dir=fwd&vtlinclude-offset=true&vtloffset-id=s64n8dpkzbsub8e8&page=Talk%3AFlow_QA

(json changed to jsonfm for convenience).

There are two problems with this:

  1. It should be based on the current board's state, not the user's default for fresh visits to boards (we may need to take a look at how this saved sorting works in general).
  2. This won't work at all for anonymous users, since they can't save preferences.

The above is a simple fix.

However, the problem mentioned in the original post happens even if the API request succeeds (either after my fix to pass sortby or because the saved one is correct).

This is because the item requested (the one clicked) is not returned in the API response, despite include-offset=true. I think this may be because we're passing the offset-id, but ordering by last updated timestamp (normally, when ordering by 'last updated', you're supposed to pass offset timestamp) , but I'm not sure. If passing the offset ID is illegal when ordering by updated, it should throw an exception.

Change 180670 had a related patch set uploaded (by Mattflaschen):
TOC: Replace code for inserting topics to live page

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

Patch-For-Review

Change 180670 had a related patch set uploaded (by Mattflaschen):
TOC: Replace code for inserting topics to live page

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

Patch-For-Review

Change 180670 merged by jenkins-bot:
TOC: Replace code for inserting topics to live page

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