webcompat / web-bugs

A place to report bugs on websites.
https://webcompat.com
Mozilla Public License 2.0
740 stars 63 forks source link

bsky.app - Virtual scrolling is jumpy, page constantly blinks #127371

Open brawaru opened 1 year ago

brawaru commented 1 year ago

URL: https://bsky.app

Browser / Version: Firefox 117.0 Operating System: Windows 10 Tested Another Browser: Yes Chrome

Problem type: Something else Description: Virtual scrolling is jumpy, page constantly blinks Steps to Reproduce: When you scroll any feed on the Bluesky, the navigation bar at the top keeps popping in and out, and scrolling gets jumpy the more you scroll, eventually contents of the page entirely disappear for a hundred milliseconds before appearing again at which point your scroll position changes to a random place. Sometimes scroll also gets stuck and continues to scroll on its own. The issue was closed by Bluesky team as issue with Firefox.

Browser Configuration
  • None

From webcompat.com with ❤️

brawaru commented 1 year ago

Related issue on Bluesky repository: https://github.com/bluesky-social/social-app/issues/1418

brawaru commented 1 year ago

Previous issue (#126837) was closed because the reporter had modified browser settings. I am able to reproduce this with stock Firefox 117.0.1, however the issue gets significantly worse if you turn off smooth scrolling in Firefox settings (Settings » General » Browsing » Use smooth scrolling).

softvision-raul-bucata commented 1 year ago

We appreciate your report. For this issue, unfortunately, a special account is needed to sign in.

Test account creation requires valid data that we do not have:

Screenshot_8

Having no valid sign-in credentials, we are not able to move forward with this issue. If more information is provided (test account credentials can only be provided by mail for security purposes, as the comments here are made public,/ attach logs/errors), in-depth testing can be performed, so please feel free to reopen or comment on the issue and we'll have a thorough look at it.

Suggestion: Try clearing cache/data/cookies, disabling add-ons and Ad-blocker (if available), or use a clean profile, and check again? Also, have the required cookies been accepted for this page?

[qa_38/2023]

brawaru commented 1 year ago

Hey, I asked the Bluesky maintainer if they can get you invite codes, if they can get them, how would you like to receive them? Sorry, I don't quite understand the test account part of your message.

As for cookies suggestion, I reproduced this issue on stock Firefox 117.0.1, with no adblocker or addons, I also didn't touch tracker protection settings. I don't think this relates to cookies at all.

softvision-raul-bucata commented 1 year ago

@brawaru Please advise the site maintainer to send the invite to rbucata@mozilla.com. The test account part of the message referred to a possible account being available for testing (providing the credentials for it via email)

[inv_38/2023]

brawaru commented 1 year ago

Hey, edueocara27 has sent a code to that e-mail. Can you check?

edueocara27 commented 1 year ago

@brawaru Please advise the site maintainer to send the invite to rbucata@mozilla.com. The test account part of the message referred to a possible account being available for testing (providing the credentials for it via email)

[inv_38/2023]

Check email. I sent a code.

softvision-raul-bucata commented 1 year ago

@edueocara27 Thanks for the invite code. @brawaru I was still unable to reproduce the issue, even with the prefs modified, on my suggested feeds, or a certain feed (Bluesky):

https://github.com/webcompat/web-bugs/assets/75027050/e26c3f9d-d6ba-490e-b003-f65e32132ed2

https://github.com/webcompat/web-bugs/assets/75027050/06c1100b-8973-4528-908a-91cbda7ade7d

Tested with:

Browser / Version: Firefox Release 117.0.1 (64-bit) Operating System: Windows 10 PRO x64

@brawaru Is it possible to post a screenshot of the issue reproducing? And 2 screenshots, 1 from the about:config section, by selecting the "Show only modified preferences" option ticked, and 1 by navigating to about:support and screenshotting the ADD-ONS section.

[inv_38/2023]

brawaru commented 1 year ago

Steps to reproduce:

  1. Go to Home page
  2. Select What's Hot Classic / Discover at the top navigation bar [^1]
  3. Scroll down

[^1]: What's Hot Classic causes this to happen way way more, however this feed contains a lot of unmarked NSFW or suggestive content, therefore I cannot record and post it here.

Expected behaviour: you're scrolling as normal, content continues to load as you scroll, nothing extraordinary.

Actual behaviour: as you scroll multiple pages scrolling gets jumpy, it scrolls back, to random places, and sometimes gets completely stuck in scrolling phrase, as you scroll further page sometimes blinks, or content completely disappears.


Firefox

Here's me scrolling Discover feed. I changed scroll amount in Windows settings. Surprisingly it's not as terrible this time, but again, it heavily depends on the feed, in some feeds it goes completely haywire.

Though, tbh, it went haywire on this recording too: it scrolled me back (sometimes I reflectively scrolled back after that) and at 1:18 it got completely locked in scrolling phase (it looks like I'm pressing PageDown, but my hand was not on the keyboard, and I also got my hand off of the mouse at that moment).

As I scrolled far down content started to disappear, but I assume in this case it was Firefox's quirk where it allows to scroll when the JavaScript thread is blocked, I remember the same thing on huge GitHub diffs with Chromium.

https://github.com/webcompat/web-bugs/assets/10401817/e2d89ff2-8972-49fe-a9e5-ed5a87e8d6e2

Preferences

Click to expand ![Screenshot of changed preferences](https://github.com/webcompat/web-bugs/assets/10401817/37f41779-f6eb-4fe5-b747-77c3ef32240d)

Addons

Screenshot of addons section of about:support page


Chromium

Here's Chromium in comparison. Scroll backs at 1:30 and since 2:18 are manual. As you can see, scroll sometimes jumps in Chromium too, but not as often as Firefox, it overall feels much much smoother.

https://github.com/webcompat/web-bugs/assets/10401817/0a0ed3e6-4203-4b84-a839-bc8eaa289be2


In reality all these issues are caused because we decided against standardising recyclerviews and web developers have to rely on garbage virtual scroll libraries

softvision-raul-bucata commented 1 year ago

@brawaru I do not have the what's hot section on my profile, but I have Discover, which shows no issues when scrolling:

https://github.com/webcompat/web-bugs/assets/75027050/eb34f21b-150c-4380-a683-56f118f96710

What I would do usually to test this kind of issue, is:

  1. Type about:profiles in the url bar.
  2. Choose Create a new profile.
  3. Call it deleteme or anything you please.
  4. Then start it. (this way you will be sure that nothing is interfering, no ghost caching etc.)- make sure account sync is not performed, as the extensions will be imported in the new profile.
  5. Test.

[inv_39/2023]

brawaru commented 1 year ago

You probably can find What's hot classic in settings, in case it's not there, use this link to add and pin it to Home.

As for reproducing this with clear profile, that's what I did for the video above — I created a clear profile and then recorded the video there, as well as settings and everything.

I am not entirely sure why it doesn't reproduce for you. Maybe try scrolling more. Alternatively, try using Bluesky as a user, that is look into threads, view replies, go back, scroll, view other thread, scroll back and forth, and such, basically how a regular user would engage with the site, because that's like the best reproduction steps I can give, and when I experience all these issues. For me it doesn't take long before Bluesky feed starts falling apart and basically become unusable in Firefox.

brawaru commented 1 year ago

I have found another person on Bluesky who experiences this issue, and below is what they told me. I suppose they don't have a GitHub account to leave a comment here, so I'll copy their response here.

Scott from Tempe (@tempeson.bsky.social) Thanks for the reply! So I am playing around with different settings, and with (auto and smooth) scrolling, it's bad like I described and you did too in your link. With auto on and smooth off, longer scroll before it starts going crazy, and with both off, it seemed to go even longer but still eventually skips and stutters. One thing from your link: the user 'softvision-raul-bucata' who is responding to you, is not scrolling far enough down in either of his videos to see the problem. When I see this problem at its worst, is when I have been off of Bluesky for a long time and trying to get caught up on lots of posts, scrolling down quite a bit, not just 10 or 20 posts. Also, I follow a lot of artists, so my feed has a lot of photos. He might want to try a feed with more media in it, not just text. And one last thing! Lol! In my brief experience with this, it is worse during the day (Pacific Coast Time here) then at night. During the day, there are a lot of posts coming in as opposed to the middle of the night when traffic is pretty light. I thought new posts arriving were what caused the glitching, but now I am not sure. I'm going to continue experimenting and will add anything of value I might find. View the original post

So yes, this issue is probably best reproduced by scrolling a frequently updating feed for long enough.

edueocara27 commented 1 year ago

@softvision-raul-bucata Apologies for hijacking the OP's report a bit, but I think I can reproduce the same issue as the OP using my settings.

I have to agree Scott. Maybe you're not able to reproduce the issue either because you're not scrolling hard enough using the mouse wheell or you're in a feed where there aren't many images.

Regarding scrolling, the only settings I modified were ''mousewheel.default.delta_multiplier_y'' which I set to 300 and ''general.smoothScroll.msdPhysics.enabled'' which I set to true. The rest are Firefox's default settings.

https://github.com/webcompat/web-bugs/assets/79176307/1e7fc0f0-abbf-42e4-83bc-4458160c5833

As I reported before, the scrolling starts normally and out of nowhere it starts to jump, even jumping up despite scrolling down. Then it returns to normal and starts all over again.

In attempts to solve the problem, I discovered that ''general.smoothScroll.msdPhysics.enabled'' alone exacerbates the problem when it is set to true and associated with other settings that increase the scroll lines. It's a shame that this configuration is precisely the one that activates smooth scrolling in Firefox, similar to what exists in Edge for example and in other chromium browsers when the ''Windows Scrolling Personality'' flag is activated.

I even tried looking for other settings that imitate this smooth scrolling without activating ''general.smoothScroll.msdPhysics.enabled''. The closest I got was using the settings:

mousewheel.default.delta_multiplier_y --> 200 mousewheel.min_line_scroll_amount --> 27 general.smoothScroll.mouseWheel.durationMaxMS --> 190 general.smoothScroll.mouseWheel.durationMinMS --> 600

https://github.com/webcompat/web-bugs/assets/79176307/4fda3125-c487-4978-9d6b-35f20e48abf8

These settings drastically improve the scrolling of Bluesky feeds in Firefox, just to show you the difference ''general.smoothScroll.msdPhysics.enabled'' makes. It still doesn't completely fix the problem. It's still possible to notice some jumps up, but it's much better than the settings I used and I think I can handle it.

Still, I don't ''feel'' this scrolling is as smooth as Edge and chromium browsers using these settings. That's why I ended up migrating to Vivaldi.

softvision-raul-bucata commented 1 year ago

@brawaru Did you perform account login in the new profile? Because I can see multiple add-ons active in both videos. [inv_39/2023]

brawaru commented 12 months ago

@softvision-raul-bucata those are built-in Firefox addons, you can see that because their signature IDs have @[...]mozilla.org at the end. They're search engines, themes and a language pack. I don't think they have any effect on reproducibility of the test.

softvision-raul-bucata commented 12 months ago

@brawaru A new, unsynced profile does not have them:

Screenshot_3

[inv_39/2023]

softvision-raul-bucata commented 12 months ago

Please post a video rec of the issue reproducing on a new profile, as seen in my screenshot

[inv_39/2023]

edueocara27 commented 12 months ago

@softvision-raul-bucata I reproduced the scrolling on a new profile as you instructed. Same thing.

https://github.com/webcompat/web-bugs/assets/79176307/70b1b83c-394c-484a-a001-73d531a865f4

edueocara27 commented 12 months ago

There was a big UI update for Bluesky today, but unfortunately nothing has changed regarding scrolling issues.

softvision-raul-bucata commented 12 months ago

@edueocara27 @brawaru Are you using Windows 11 by any chance?

[inv_39/2023]

edueocara27 commented 12 months ago

@edueocara27 @brawaru Are you using Windows 11 by any chance?

[inv_39/2023]

Yes. I'm using Windows 11.

softvision-raul-bucata commented 12 months ago

I was able to reproduce it on a Windows 11 Machine

[inv_39/2023]

bjlanger commented 11 months ago

Might as well throw my hat into the ring as well as I encounter the same issue. Running firefox on an up to date installation of Arch Linux.

Name    Firefox
Version     118.0.1
Build ID    20230928170531
Distribution ID     archlinux
User Agent  Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0
OS  Linux 6.5.5-arch1-1 #1 SMP PREEMPT_DYNAMIC Sat, 23 Sep 2023 22:55:13 +0000
OS Theme    Nordic-darker-v40 / Adwaita
Application Binary  /usr/lib/firefox/firefox

I can typically scroll about 1-2 pagelengths before things start to get weird and jump around or scroll backwards.

brawaru commented 9 months ago

Latest update (121.0) made experience absolutely unbearable on all sites that use virtual scrolling (Mastodon, Discord, Twitter, etc), and especially Bluesky. I had to revert to 120.0.1.

Like wth (this is a clear profile with no extensions no anything):

https://github.com/webcompat/web-bugs/assets/10401817/a29092e2-6362-4714-af91-2b95a76178c0

UPDATE: Bug report is filled at https://bugzilla.mozilla.org/show_bug.cgi?id=1871760.