Scrolling stutters on 120Hz screens
-
Japs last edited by
Hello,
I've noticed that the Opera app on Android stutters quite a lot when scrolling, at least on a phone with a 120Hz screen (I use a Galaxy S21).
I've done some research and I've found out that Chromium browsers generally don't play nice with 120Hz screens, but that this can be fixed by disabling the "Android SurfaceControl" flag. I tested this with the Chrome browser and it indeed worked. However, with Opera (which is my preferred browser), we cannot access this flag. Would it therefore be possible to either (i) simply fix this issue, or (ii) give us access to this flag so that we can disable it?
Many thanks for any help you can offer.
-
ginger1984 last edited by
@japs said in Scrolling stutters on 120Hz screens:
Hello,
I've noticed that the Opera app on Android stutters quite a lot when scrolling, at least on a phone with a 120Hz screen (I use a Galaxy S21).
I've done some research and I've found out that Chromium browsers generally don't play nice with 120Hz screens, but that this can be fixed by disabling the "Android SurfaceControl" flag. I tested this with the Chrome browser and it indeed worked. However, with Opera (which is my preferred browser), we cannot access this flag. Would it therefore be possible to either (i) simply fix this issue, or (ii) give us access to this flag so that we can disable it?
Many thanks for any help you can offer.
Could you try Opera Mini to see if Opera Mini doesn't have this problem?
Opera Mini uses WebView only under a surface.
Opera is a full browser and only parts are WebView
Opera doesn't have a surface and communicates directly with your input, like you scrolling by touching the screen.If you touch the screen, a lot of events are happening, these build up in the message que. If the message que gets overloaded at the main thread the application Opera doesn't stutter but actually freezes its main thread only. Although you perceive this as stutter indeed.
-
Mrxyzl last edited by
@ginger1984 opera mini doesnt have such issue. Its lag a bit while loading page only. But textwrap doesnt work for me ( Samsung S21+ exxynos)
-
ginger1984 last edited by
@mrxyzl this happened before. Opera Mini uses Chrome Android WebView but therefore cannot interface directly.
Next test, try Google chrome, does it stutter like Opera Mini or does Google chrome stutter like Opera full browser.
In the past when Google started stuttering eventually Opera full browser did because Google Chrome and Opera full are from same code base an open source project.
Please let me know.
Meanwhile repeat the test before 120 hz and after 60hz in phone display options.
If 60hz display option didn't work read this:
https://forums.opera.com/topic/29626/bad-scrollingHope to hear from you. This happened before.
-
Mrxyzl last edited by
@ginger1984 as stated at the first post, chromium/chrome also have this issue but can be fixed by disable surfaces control flag
-
ginger1984 last edited by ginger1984
@mrxyzl but also with display at 60 hZ test?
But because you found out which setting needs to change you pointed out something I would like to get back in Opera too.
In the past Opera had so many config options and one day it was gone. Hope it gets back since with Chrome it's here too to change a few things, but I don't use chrome much.
As you read the other thread about stuttering you could try to wipe cache and reboot, especially if you received a WebView update with Google Play.
Most questions of why have been answered in the thread about stutter, it took 2 years. But suffice it to say that Samsung did a 'little' change. (Samsung slowed down other browsers and paid a fine dor it in Italy, because all browsers were affected except Samsung browser like Microsoft once paid a fine for destroying other browsers)
https://forums.opera.com/topic/29626/bad-scrolling
See this, could try to read if you see a familiar preface. -
ginger1984 last edited by ginger1984
I can confirm that Galaxy Tab s5e is also affected seriously unfortunately again with this bug.
Chrome before switching flag has identical stutter behavior.
Then in chrome://flags disabling the "Android SurfaceControl"
Chrome now suddenly is very smooth in scrolling.
Al Opera has to do is considering giving the flags options back as they existed in the past.
opera://flags
The biggest problem with Android is for me that it has continually regression in bugs, and these bugs you can wait for easily 2 years to be fixed.
I will try this fix in Chrome at my mobile phone to see if it has similar results since then more devices are affected.
Also a lot of phones like Xiomi seem to be affected when reading about this flag that proves just a tiny thing can make it work smoothly.
I don't like Chrome itself it has continually Microsoft office like digital assistant popping up which a lot of people knew as Clipy Office assistant. Besides that nowadays when visiting a website it's pushing popup for cookies, selecting lists of cookies, floating ads while scrolling, then a lucky you win advertising, then subscribe to website then login button to read more, then finally reading an article, yes that is Google chrome, oh I forget Google says if I want to get automatic translation at every page...
-
wiviwol947 last edited by
@mrxyzl this occurred previously. Drama Mini uses Chrome Android WebView yet in this way can't interface straightforwardly.
Next test, attempt Google chrome, does it stammer like Opera Mini or googles chrome falter like Opera full program.
In the past when Google began stammering in the long run Opera full program did on the grounds that Google Chrome and Opera full are from same code base an open source project.
Kindly let me know.
In the interim recurrent the test before 120 hz and after 60hz in telephone show choices.
On the off chance that 60hz showcase choice didn't work read this:
https://forums.opera.com/subject/29626/terrible looking over
Desire to hear from you. This occurred previously.
-
ginger1984 last edited by
@wiviwol947 All Chromium based browsers now have this bug. That's a lot of them.
Here is an excellent example at the open source chromium development website.
https://bugs.chromium.org/p/chromium/issues/detail?id=1057459
They have included a good example video. But as you read some browsers have the flags that only one of needs to be set to disabled and it suddenly works smooth as it should.
Probably someone needs to forward it to the chromium development website too.
The reason they say flags disappeared is because after a certain amount of time a flag is disabled automatically in the building process.
-
cherenok last edited by
I am also asking for this feature. I bought a phone (Xiaomi Mi 9T Pro) with DC dimming specifically so that my eyes don't hurt from PWM. But I can't use my favorite browser due to poor rendering performance. According to testufo.com , the frame rate was lowered to 40-43. If I temporarily disable DC dimming, the refresh rate will increase to 60. This can be fixed by disabling the "Use Android Surface Control" option (works in Chrome, Brave and Vivaldi). I really hope that you, dear developers, will not pass by our problem.
-
ginger1984 last edited by
@cherenok I tried chrome, brave, vivaldi and they all worked fluently only after setting the surface flag to disabled. Without it those browsers are pretty useless. Samsung internet doesn't have flags and firefox has no flags in release but has in developer preview. This is really bad. A simple tiny switch can make a browser utterly unfunctional. And guess which browser all these years was never affected? It starts with an S and ends with ...sung.
-
miyukiwork Opera last edited by
Hello! We are investigating this issue and would like to know where exactly we can observe the problem. If it happens in the webpage area, please specify which website is loaded even though it happens on every site. If it happens in UI, where and which action is not smooth?
-
Mrxyzl last edited by Mrxyzl
@miyukiwork
Hello, first, i want to thanks the team for investigate this issue
I have stuttering when scrolling on this site, especially at the end of a fling, it seem to skip a few frame. The issue is more noticeable on android 11.
My phone is S21+ Exynos on oneui 3.1 android 11. Android 12 seem to have less stutteringEdit: another site i notice extreme stuttering is this one
-
Japs last edited by
Hello,
Thank you for responding. The issue happens on pretty much every webpage (not the Opera UI). It certainly happens for example on https://www.thurrott.com/# and on https://www.androidcentral.com/blog. It occurs every time I scroll on these pages (and is particularly obvious with a "real" scroll, i.e when you swipe with your finger and then lift your finger).
I hope you will be able to fix this very soon.
-
personal1985 0 last edited by
@miyukiwork every website including Wikipedia. The fix for this is already posted for all chromium based browsers but Opera is the only browser which has no flags anymore.
Tested with Chrome, Vivaldi and Brave, all chromium based too, identical behavior until setting the flag.
Example to get Chrome working:
Chrome before switching flag has identical stutter behavior.
Then in chrome://flags disabling the "Android SurfaceControl"
Chrome now suddenly is very smooth in scrolling.
https://bugs.chromium.org/p/chromium/issues/detail?id=1057459
A tiny switch and Opera would have been smooth too.
-
miyukiwork Opera last edited by
Yes, now we can see the problem especially in https://www.thurrott.com/#
Thanks a lot for the info! -
miyukiwork Opera last edited by
The latest beta version 67.0.3485.62523 includes "Android SurfaceControl" in opera://flags
-
Japs last edited by
@miyukiwork Thanks for the follow-up! I just briefly tested the beta version, switching between surfacecontrol enabled and disabled, but I unfortunately don't seem to notice any difference I must say.
-
cherenok last edited by
@miyukiwork I tested the update and can say it works great with enable DC dimming. I don't see any stutter in the picture. The site testufo.com shows 60 fps. I am completely satisfied. Thanks for your work.