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

V2.13: Answer buttons not appearing in Reviewer #7369

Closed
3 of 4 tasks
benjaminor opened this issue Oct 8, 2020 · 91 comments
Closed
3 of 4 tasks

V2.13: Answer buttons not appearing in Reviewer #7369

benjaminor opened this issue Oct 8, 2020 · 91 comments
Labels
2.13.x Bug Can't reproduce bugs people file that we can't reproduce Help Wanted Requesting Pull Requests from volunteers Keep Open avoids the stale bot Needs Review Needs Triage Priority-High Reviewer

Comments

@benjaminor
Copy link

Reproduction Steps
  1. Select deck to review
  2. Question page is nearly blank (only note and "show answer" button)
  3. Right answer page is also blank

See pictures:
Screenshot_20201008-142047_AnkiDroid
Screenshot_20201008-142059_AnkiDroid

Expected Result

Question and answer page should be as usual, with the buttons there.

Debug info

AnkiDroid Version = 2.13.5

Android Version = 8.0.0

ACRA UUID = 80fce863-4876-45bc-9e26-1b657faa1f28

Scheduler = std

Research

Enter an [x] character to confirm the points below:

  • I have read the support page and am reporting a bug or enhancement request specific to AnkiDroid
  • I have checked the manual and the FAQ and could not find a solution to my issue
  • I have searched for similar existing issues here and on the user forum
  • (Optional) I have confirmed the issue is not resolved in the latest alpha release (instructions)
@welcome
Copy link

welcome bot commented Oct 8, 2020

Hello! 👋 Thanks for logging this issue. Please remember we are all volunteers here, so some patience may be required before we can get to the issue. Also remember that the fastest way to get resolution on an issue is to propose a change directly, https://github.com/ankidroid/Anki-Android/wiki/Contributing

@david-allison
Copy link
Member

Hi @benjaminor, thanks for the report.

Could you confirm that this is an issue with 2.13.5:

Download https://github.com/ankidroid/Anki-Android/releases/download/v2.13.4/AnkiDroid-2.13.4.parallel.A.apk and see if this also has the same problem.

@david-allison
Copy link
Member

I can't immediately see any reason why this should be happening: v2.13.4...v2.13.5

@david-allison
Copy link
Member

@benjaminor,

Could you possibly export a deck which has this problem and upload it here, or to a file sharing site so we can ensure it's not a card template problem?

@benjaminor
Copy link
Author

Hi @benjaminor, thanks for the report.

Could you confirm that this is an issue with 2.13.5:

Download https://github.com/ankidroid/Anki-Android/releases/download/v2.13.4/AnkiDroid-2.13.4.parallel.A.apk and see if this also has the same problem.

No, I can confirm this is also an issue with 2.13.4, should I also check out another version?

@david-allison
Copy link
Member

david-allison commented Oct 8, 2020

Yes please, use Parallel.A when downloading. This will really help us track down the issue. Thank you!

https://github.com/ankidroid/Anki-Android/releases/tag/v2.12.1 - should be fine, you can download parallel.B and use this to review while we resolve the problem
https://github.com/ankidroid/Anki-Android/releases/tag/v2.13.0
https://github.com/ankidroid/Anki-Android/releases/tag/v2.13.1
https://github.com/ankidroid/Anki-Android/releases/tag/v2.13.2
https://github.com/ankidroid/Anki-Android/releases/tag/v2.13.3

@benjaminor
Copy link
Author

As you said, v2.12.1 did not have the issue, but I could reproduce it with v2.13.0 and later.

Interestingly, the buttons still work, they are just not visible anymore. They disappear a short moment after I start the review.

@benjaminor
Copy link
Author

@benjaminor,

Could you possibly export a deck which has this problem and upload it here, or to a file sharing site so we can ensure it's not a card template problem?

This one has the issue (all of my decks have), but I suspect the deck is probably not the cause, my decks are quite simple: https://nextcloud.orthen.net/index.php/s/8kLbZLwsTQEKgcj

@david-allison
Copy link
Member

@benjaminor Could you try Settings - Advanced - Safe Display Mode on 2.13.5 and see if this fixes it?

Which phone are you using?

@benjaminor
Copy link
Author

@benjaminor Could you try Settings - Advanced - Safe Display Mode on 2.13.5 and see if this fixes it?

Which phone are you using?

Unfortunately, this does not resolve the issue. (Neither does disabling the "Optimize battery usage" setting for the app.)

I can go on and test the v2.13.alphaX releases to do a bisect where the bug was introduced?

I'm using a Samsung Galaxy S7 (SM-G930U) which has Android 8.0.0, Samsung Experience Version 9.0 and a kernel 3.18.71-14970140 (if that helps you).

@hiacre
Copy link

hiacre commented Oct 9, 2020

I saw this exact same issue yesterday. It was working in the morning, and when I used AnkiDroid in the evening, found that the buttons (again/hard/good/easy) weren't appearing. I do not know if the Google Play Store automatically updated the app during the day or not. In addition, I could not see the OS UI when swiping up from the bottom of the phone (this has shortcuts for home, back, running tasks, etc). The OS UI was there (it reacted to presses), it just wasn't visible.

AnkiDroid version 2.13.5
Android version 8.0
Phone LG G5 (LG-H850)
Kernel 3.18.71-perf+
Settings > Advanced > Safe display mode set to "enabled" did not fix the problem.

I uninstalled the Google Store version of AnkiDroid, and began installing various tagged releases to find which versions worked and where the breakage appeared. I found that all versions I tried (2.12.1, 2.13alphaX, 2.13betaX, 2.13.X) worked.

When I reinstalled the Google Store version of AnkiDroid (v2.13.5), I found that I could no longer reproduce the issue.

@binarin
Copy link

binarin commented Oct 9, 2020

I can see the same, but only on 1 of the 2 phones. Both have 2.13.5 installed. What's interesting is that all buttons (answer buttons at the bottom and menu bottom at the top) are just invisible, but they are clickable and do what they should. Reinstalling alone didn't help, but doing "Remove data" and "Clean cache" for that app solved the problem.

@ShrikeV
Copy link

ShrikeV commented Oct 10, 2020

I had same issue and confirm that "Remove data" and "Clean cache" solved the problem.

@terryneal2
Copy link

I also had the same issue and just 'Remove data' fixed it. Thanks everyone.

@mikehardy
Copy link
Member

That is so bizarre - great work figuring out a workaround but I can't for the life of me figure out why that would fix it? 🤔

@hiacre
Copy link

hiacre commented Oct 10, 2020

Just to update on my experience - I didn't use the "remove data" option. Instead I reinstalled v2.13.5 which helped (not sure if that's equivalent to "remove data" or not). About 11 hours later, the problem returned. I've now downgraded to v2.13.0, and will do a minor version upgrade every couple of days to find out if there's a particular version where the problem cuts in.

One thing I noticed that might be helpful: when the problem returned, it exhibited itself slightly differently. I started a review, and the question appeared with no top menu bar at all. Then, within about a second, it flickered into visibility. That is, it seemed to rapidly disappear then reappear until it settled on being visible. After a few rounds of seeing this behaviour, it decided to stop showing itself altogether.

@hiacre
Copy link

hiacre commented Oct 11, 2020

New observation: after downgrading to v2.13.0, everything seemed fine for about 36 hours. When I started up AnkiDroid today, I was presented with the AnkiDroid Changelog screen which has a bar at the top (showing back button, and "AnkiDroid v2.13.5") and a bar at the bottom (showing the buttons "Rate AnkiDroid" and "Continue"). As I scroll up and down the changelog, the top and bottom bars flicker like crazy (the buttons in the bar at the bottom do NOT flicker). When I stop scrolling, there is about a 1 in 3 chance that both bars disappear (but the buttons at the bottom are still visible). I thought this was so similar to the reported problem that it was worth mentioning.

It appears I have been auto-upgraded to v2.13.5, I'm not sure if AnkiDroid did this itself or if the Google Play store did this. I'm positive I installed from the v2.13.0 APK... perhaps I was mistaken. EDIT: I was on v2.13.0 and was auto-upgraded by Google Play Store, have now turned off auto-updates.

@mikehardy
Copy link
Member

Yeah, play store will auto-update you, which is normally exactly what you want. But not if attempting to isolate one version where things break of course :-)

@david-allison
Copy link
Member

david-allison commented Oct 11, 2020

New observation: after downgrading to v2.13.0, everything seemed fine for about 36 hours. When I started up AnkiDroid today, I was presented with the AnkiDroid Changelog screen which has a bar at the top (showing back button, and "AnkiDroid v2.13.5") and a bar at the bottom (showing the buttons "Rate AnkiDroid" and "Continue"). As I scroll up and down the changelog, the top and bottom bars flicker like crazy (the buttons in the bar at the bottom do NOT flicker). When I stop scrolling, there is about a 1 in 3 chance that both bars disappear (but the buttons at the bottom are still visible). I thought this was so similar to the reported problem that it was worth mentioning.

Is there any possibility that you (or anyone) could send a video of this? Especially on the changelog/ Settings- Advanced - About AnkiDroid screen.

Are there any settings that you're changing before this appears (full screen for example), or does this appear seemingly at random?

@hiacre
Copy link

hiacre commented Oct 12, 2020

I've only ever seen the Changelog screen after launching the app after an update. Is there another way to view it? I'm not sure how useful the Settings->Advanced->About AnkiDroid screen will be, because all the text fits on the screen, so it's not possible to scroll up and down.

I didn't change any settings, as I'm happy with the defaults (I had no idea there was a fullscreen mode!) The weird behaviour starts up seemingly at random.

I attempted to reproduce just now by upgrading from v2.13.0 to v2.13.5. I saw flickering on the changelog screen as I scrolled up and down. The flickering was on the top bar, but no flickering on the bottom (possibly because it's a white bar on a white background - when I spotted this before, I was using Night Mode). I started up AZ Screen Recorder to take a video, but the act of doing this fixed the flickering problem. I'll have to find a second phone next time it happens.

It made me wonder whether it's related to overlay apps. I have a blue light filter installed, but it has worked fine with all other apps (and all other versions of AnkiDroid).

@hiacre
Copy link

hiacre commented Oct 12, 2020

I managed to grab a video of the flicker, after updating from v2.13.0 to v2.13.5.

https://www.dropbox.com/s/abznbno1bizgajf/AnkiDroid%20Issue%207369%20changelog%20flicker.mp4?dl=0

I turned on "Night mode", so that the bottom bar flickering could be seen as well. After I took this video, I attempted to use the AZ Screen Recorder again, but (again) doing that resolved the issue.

@david-allison
Copy link
Member

Thanks for the video!

Could you download the 2.12 parallel release and confirm that the issue doesn't occur (especially if reports say it comes and goes after ~48 hours): https://github.com/ankidroid/Anki-Android/releases/download/v2.12.1/AnkiDroid-2.12.1.parallel.A.apk

The video implies to me that this is a hardware rendering issue, but, the fact that this occurred on a version upgrade implies that there may be something more to it.

I'll guess that it could potentially be one of the following updates:

    implementation 'com.google.android.material:material:1.2.0'
    implementation 'androidx.appcompat:appcompat:1.2.0'

Could you also test the Parallel.B of:

2.13alpha 9: https://github.com/ankidroid/Anki-Android/releases/tag/v2.13alpha9
2.13alpha 11: https://github.com/ankidroid/Anki-Android/releases/tag/v2.13alpha11
2.13alpha 13: https://github.com/ankidroid/Anki-Android/releases/tag/v2.13alpha13

and see if these do or don't exhibit this problem?

@mikehardy
Copy link
Member

...been watching this (thanks for the video and reproduction efforts, sincerely!) and was thinking the same on those two dependency updates as "maybe"s

@hiacre
Copy link

hiacre commented Oct 15, 2020

I've been using the v2.12.1 parallel A release for 48 hours now, no sign of any problems. I'll move on to the v2.13 alphas next.

@hiacre
Copy link

hiacre commented Oct 17, 2020

I've been using parallel B of v2.13alpha9 for about 48 hours now, with no problems.

@hiacre
Copy link

hiacre commented Oct 20, 2020

I've been using parallel B of v2.13alpha11 for about 3 days now, with no problems. I'll move on to v2.13alpha13 next.

@sirhand
Copy link

sirhand commented Mar 9, 2021

The behavior is different for my different decks! For some it works perfectly fine. "Japanese V2K - Visual Novel, Anime, Manga" doesn't work. "Kana (Hirigana)" works fine.

@mikehardy
Copy link
Member

@sirhand do you also see strange flickering if you open the changelog ? Unfortunately I think that only triggers on version upgrades of stable versions so it's not really easy to trigger it - you'd have to e.g. install 2.14.3-parallel.A maybe then 2.14.3-parallel.B from our releases settings to see it unless you had a debug version installed (then it shows up in settings as a thing you can trigger, for testing)

@sirhand
Copy link

sirhand commented Mar 9, 2021

How do I open the changelog? Right now I have it installed from the play store. I have uninstalled and reinstalled a few versions trying to fix. Should I install the parallels? I'm happy to help any way I can.

@mikehardy
Copy link
Member

the parallels allow you to be in control of versions outside of the play store release cycle, so when testing things they are the best way to go I think. I do recommend (for testing!) using a different collection and/or making sure your real collection is backed up well - if you touch your collection with 2.15-alpha builds you likely will not be able to use 2.14 again. Now, 2.15 is working pretty well (I use it daily, we have hundreds of alpha testers) so this is not a disaster, but might be unexpected.

If you install 2.14.3-parallel.A and run it, then install 2.14.5-parallel.A it should trigger the changelog. I'm curious if you see a flicker like one of the other reporters here. It's a much simpler layout but could reproduce the problem, and right now reproduction is the key: I can't reproduce this, so I'm stuck. I'm looking for any reproduction avenue

@jbuschtoens
Copy link

jbuschtoens commented Mar 9, 2021 via email

@david-allison

This comment has been minimized.

@mikehardy
Copy link
Member

mikehardy commented Mar 9, 2021

CALL FOR TESTERS - Please install one of the parallel builds from this new test build and report back: https://github.com/mikehardy/Anki-Android/releases/tag/v2.14.5-issue7369-2

@david-allison-1 I think my first attempt led to that regression ("cards rendering totally white"). It has been reverted

New hunch (as explained in that release) is that this is a hardware render incompatibility that just cropped up due to some system or webview change on android 8, which would explain why we're only seeing this on real devices (and I can't reproduce it because I have no Android 8 physical devices + emulator uses software render). New test is to set all the reviewer views to software render as one rather blunt way to fix it. If the test build works I can try to get more surgical with what is software vs hardware render, and what Android versions go software as needed.

Thanks in advance for all feedback. We know this is a big deal, I'm giving it a best effort but without being able to reproduce it personally, it's very hard to fix.

https://stackoverflow.com/questions/18448862/android-text-disappears-frequently-in-webview-when-layer-type-software-is-set
https://stackoverflow.com/questions/26325725/how-to-use-layertype-value-being-set-differently-inside-the-resources
https://stackoverflow.com/questions/57465334/android-webview-with-layer-type-software-not-showing-html5-canvas-content
https://developer.android.com/guide/topics/graphics/hardware-accel#controlling

@jbuschtoens
Copy link

jbuschtoens commented Mar 9, 2021 via email

@jbuschtoens
Copy link

jbuschtoens commented Mar 9, 2021 via email

mikehardy added a commit to mikehardy/Anki-Android that referenced this issue Mar 9, 2021
@mikehardy
Copy link
Member

mikehardy commented Mar 9, 2021

@jbuschtoens your testing help here has been absolutely critical, I really appreciate it. I'm relieved to hear I may have found a viable workaround. I have one more test build up that now takes my "stab in the dark" test2 and focuses it to only Android 8/8.1.

https://github.com/mikehardy/Anki-Android/releases/tag/v2.14.5-issue7369-3

if this build works for you I will be releasing it as 2.14.6 immediately because 2.14.5 inadvertently broke other users while trying to fix this and we have lots of people unable to review right now 😱

@jbuschtoens
Copy link

jbuschtoens commented Mar 9, 2021 via email

@mikehardy
Copy link
Member

Wonderful! It's not perfect and it is a little bold to move this quickly but I'm releasing 2.14.6 with this now to fix broken reviewers in general on 2.14.5 and hopefully fix all the Android 8 people assuming it works for them as well. If not, I'll keep trying. Thanks again for the testing

Anyone else that has time to test: I still want to hear more confirmations if possible to know it is working, all help appreciated.

@josemlucero
Copy link

New versión working ok for me

@terryneal2
Copy link

terryneal2 commented Mar 10, 2021 via email

@terrywallwork
Copy link

Got 2.14.6 works correctly :) on Android 8 tablet.

@mikehardy
Copy link
Member

Oh my goodness, this is such a relief. I'm sure it is a relief for everyone here as well! Who would have thought that some vendors would break hardware rendering (only testable on real devices!) for Android 8/8.1 only? That's kind of amazing. I'm really glad it's fixed, that was one of the more difficult issues I've worked on here. Thanks everyone for collaborating here.

Happy reviewing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.13.x Bug Can't reproduce bugs people file that we can't reproduce Help Wanted Requesting Pull Requests from volunteers Keep Open avoids the stale bot Needs Review Needs Triage Priority-High Reviewer
Projects
None yet
Development

Successfully merging a pull request may close this issue.