Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] Visual flashing / aliasing occurs #9

Open
novellus opened this issue Nov 5, 2022 · 15 comments
Open

[Bug] Visual flashing / aliasing occurs #9

novellus opened this issue Nov 5, 2022 · 15 comments

Comments

@novellus
Copy link

novellus commented Nov 5, 2022

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

  • an unexpected image appears briefly in a random part of the grid
  • the image look like a subset of the in-game UI buttons, incorrectly spaced and overlaid onto the game grid
  • the image appears, sometimes flashing rapidly for a second or two, and then disappears forever
  • a new image occurs every few minutes, each time in a new location on the grid

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).

bug.mp4
@TheSunCat
Copy link
Owner

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
Copy link
Author

novellus commented Nov 6, 2022

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

  • Hardware: Pixel 6 Pro
  • OS: GrapheneOS (build TP1A.221005.002.2022102800)

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
Copy link
Owner

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
Copy link
Author

novellus commented Nov 13, 2022

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
Copy link
Owner

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
Copy link
Owner

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
Copy link

askorbinovaya-kislota commented Dec 14, 2022

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

@askorbinovaya-kislota
Copy link

Record_20221214_115403_compressed.mp4

@pranabekka
Copy link

Can confirm.

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

Phone: Oppo F15 (CPH2001)

Android version: 11

ColorOS version: 11.1

@AstralShadow
Copy link
Contributor

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
Copy link
Owner

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
Copy link
Owner

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
Copy link

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

@dominikbell
Copy link

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

@TheSunCat
Copy link
Owner

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! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants