Page MenuHomePhabricator

Watchlist Expiry: Star jumps when switching temporary durations
Open, LowPublic

Description

Steps to reproduce:
Visit (eg) https://test.wikipedia.org/wiki/Main_Page with the page not being on your watchlist
Click the star icon to watch it
On the notification bubble, change from indefinite to a temporary duration (eg 6 months)
Change from the temporary duration chosen to a different temporary duration

Visual display result:
Half filled star spins roughly half-way around (~180°) and then jumps back to the original orientation

Note: trying this a few times shows that it sometimes spins more than 180°. My guess is that it spins until it has finished the api request to change the duration, and then jumps to the final result of the left side being shaded, and the right side not. Perhaps it should just keep rotating until it hits the correct orientation and then stop?

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

My guess is that it spins until it has finished the api request to change the duration, and then jumps to the final result of the left side being shaded, and the right side not

Correct.

Perhaps it should just keep rotating until it hits the correct orientation and then stop?

Makes sense, but this is a little complicated and for what I'd consider a minor detail. The rotation is done with the CSS animation property with a duration of indefinite. To get the animation to do one perfect full rotation, we'd need to somehow interface with the CSS animation from the JS (which I believe is possible with some hackery), or use JS to do the animation (not as pretty). Both options aren't great.

The same behaviour has always existed with the full/empty star, it's just less pronounced.

Thanks for reporting this, @DannyS712! Good catch :) I've reviewed this bug, and it is low priority at this point. This is for a few reasons: 1) it doesn't interfere the user's ability to select a temporary time period, 2) it still shows a rotating star (even if the rotation is not complete), and 3) it requires some potentially complex work for the team, which would take time away from more high priority work. For this reason, we'll keep the current behavior for now and see if we get any feedback from users on this issue (when we do the early rollout on a group of pilot wikis). We'll also keep this task open, so we can monitor it. Thanks again!

MusikAnimal removed a project: Community-Tech.