TheSunCat / Sudoku

FOSS Sudoku, made with 💜 (and Flutter).
GNU General Public License v3.0
62 stars 6 forks source link

[Bug] Visual flashing / aliasing occurs #9

Open novellus opened 1 year ago

novellus commented 1 year ago

The latest update released on F-Driod introduced a new visual bug which occurs regularly. This bug was not present in the previous version.

Details

See attached video for examples. Artifacting occurs at 0:08 (upper left major grid cross) and a larger artifact occurs at 2:15 (bottom of grid, left and right).

https://user-images.githubusercontent.com/6426915/200143632-c052ae59-ee01-47b7-9e17-2f600778fdf7.mp4

TheSunCat commented 1 year ago

Thanks for the report! I am having trouble reproducing this issue (which I need to be able to do in order to try fixing it)... I've been staring at the puzzle board for a good 15 minutes and it has yet to happen. I have not changed any core rendering code between the two releases either, so it doesn't make sense that an issue like this would happen. This looks like something maybe changed on Flutter's side?

Does your phone have any customizations/modifications applied that might affect the app? If not, I could try getting an Android Virtual Device with your phone's model and testing if it occurs on it.

novellus commented 1 year ago

In my reproduction (for the video), I watched the screen for a good 5 minutes without artifacting after starting a fresh puzzle. The artifacting did not begin until I had started filling out the puzzle out of boredom. Once I noticed the artifacting I stopped and didn't change anything so I could get a few on video. Replication may require some of the puzzle be filled in and / or that a number is selected. In my example, 9 is selected for the duration.

My setup details are as follows, in case that does help with reproduction

As a note, GrapheneOS makes several notable security hardening changes compared to upstream, including a hardened malloc and libc. This does not typically negatively impact applications, but there may be a subtle bug that is only exposed by the hardened system environment.

TheSunCat commented 1 year ago

I'm really stumped with this one. I've tried running the app in an Android Virtual Device matching your hardware, but was unable to reproduce the issue. I'm considering installing GrapheneOS on my own Google Pixel 3a, and if it happens there then we can isolate this to a GrapheneOS bug. However as this is an involved process (currently running LineageOS 18, would have to wipe all that), I can't say when I will be able to test this. Is the white/black gradient seen in the video just a reflection, or being rendered by the app? The only available background colors are full white and full black, so if it's rendering that it's probably related to the bug.

novellus commented 1 year ago

That's just a reflection, and I have not noticed any other anomalous visuals.

This issue may only affect a small number of users if its OS related (maybe only me), and is not breaking, so I agree it may not be worth the apparent effort to isolate the issue.

TheSunCat commented 1 year ago

Yeah... I'll have to leave this one on hold (until/if I distro hop to GrapheneOS). Sorry! In case anyone else runs into this (or you find a cause), please let me know in this issue.

TheSunCat commented 1 year ago

I've made the switch to GrapheneOS and I am as of yet unable to reproduce this issue. I'll keep trying but else I might have to close this.

askorbinovaya-kislota commented 1 year ago

happens at 3:18 mi 10t lite with miui 13.0.5, android 12

askorbinovaya-kislota commented 1 year ago

https://user-images.githubusercontent.com/105155938/207555499-fd46290a-d9fa-4834-bae4-00f55f01bfa0.mp4

pranabekka commented 1 year ago

Can confirm.

App version: 1.1.2 (F-Droid, 29/10/2022)

Phone: Oppo F15 (CPH2001)

Android version: 11

ColorOS version: 11.1

AstralShadow commented 1 year ago

I experienced the same bug. App version: 1.1.2 (F-Droid, 29/10/2022) Phone: HUAWEI Y5p Android version: 10 EMUI version: 10.1.0

TheSunCat commented 1 year ago

I was able to reproduce this in GrapheneOS, but as it has dropped support for my phone (Google Pixel 3a) I had to switch to a maintained ROM. I do not seem to get this issue on my current install (Android Ice Cold Project)... I'd suspect the modifications GrapheneOS makes to cause this, which is why I'm really surprised to learn this also affects some stock ROMs as well. I don't see anything in common with the reported Android versions/phones either... Perhaps just updating the version of Flutter I build with might fix this. I will update Flutter for the next release (containing the bug fix from @AstralShadow as well) and hopefully maybe it will have been fixed by Flutter :)

TheSunCat commented 1 year ago

I have just upgraded Flutter and all dependencies. Hopefully that will squash this bug! Watch for a new release soon-ish, once I fix the remaining bugs.

JabbaWaya commented 1 year ago

FWIW, have the same issue with my Pixel 3a, standard android, latest version by Google

dominikbell commented 1 year ago

I also experience the same bug, even with the latest version of the app.

TheSunCat commented 1 year ago

Thanks for all the reports! I have also ran into it on my current LineageOS 20 install, so it is indeed not caused by GrapheneOS, but rather either Android 12-13 or Flutter. I'm not sure what I can do to tackle this, however, but I guess the first step would be finding a MWE to report to Google at the Flutter issue tracker. As it's not a big issue for me (it happens very rarely), I'm not going to spend the time to try to do this on my own, but if someone has the time and dedication to try to figure this one out, your contributions are welcome! :)