FooIbar / EhViewer

EhViewer overhauled with Material Design 3 and more, forked from https://github.com/Ehviewer-Overhauled/Ehviewer
GNU General Public License v3.0
2.31k stars 88 forks source link

Crash when activating search bar #996

Closed mirh closed 6 months ago

mirh commented 6 months ago

复现步骤 / Step to reproduce

  1. Fresh install
  2. Start it
  3. Search anything

预期行为 / Expected behaviour

Work like it used to work until like 2-3 days ago.

实际行为 / Actual Behaviour

Crash (this also happens when you open the comments view).

应用日志 / App logs

E AndroidRuntime: FATAL EXCEPTION: main
E AndroidRuntime: Process: moe.tarsin.ehviewer, PID: 11441
E AndroidRuntime: java.lang.IllegalStateException: The display list is not valid.
E AndroidRuntime:        at android.view.RenderNode.getNativeDisplayList(RenderNode.java:256)
E AndroidRuntime:        at android.view.DisplayListCanvas.drawRenderNode(DisplayListCanvas.java:189)
E AndroidRuntime:        at y10.h(Unknown Source:13)
E AndroidRuntime:        at u10.c(Unknown Source:532)
E AndroidRuntime:        at Ce1.I(Unknown Source:61)
E AndroidRuntime:        at F5.a(Unknown Source:109)
E AndroidRuntime:        at Hc0.<init>(SourceFile:18)
E AndroidRuntime:        at rd0.a(Unknown Source:109)
E AndroidRuntime:        at androidx.compose.foundation.lazy.b.c(Unknown Source:277)
E AndroidRuntime:        at V4.C(Unknown Source:1568)
E AndroidRuntime:        at wd0.i(Unknown Source:582)
E AndroidRuntime:        at r3.i(Unknown Source:826)
E AndroidRuntime:        at Ab0.d(Unknown Source:77)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at MP0.k(Unknown Source:0)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at Hj0.y(Unknown Source:94)
E AndroidRuntime:        at qn.d(Unknown Source:45)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at Hj0.y(Unknown Source:94)
E AndroidRuntime:        at qn.d(Unknown Source:45)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at gf.k(Unknown Source:0)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at Vf.d(Unknown Source:146)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at bM0.d(Unknown Source:297)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at xh1.k(Unknown Source:0)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at e70.k(Unknown Source:58)
E AndroidRuntime:        at ld.k(Unknown Source:9)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:113)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at androidx.compose.ui.node.a.L(Unknown Source:16)
E AndroidRuntime:        at androidx.compose.ui.node.a.M(Unknown Source:17)
E AndroidRuntime:        at eA.d(Unknown Source:7)
E AndroidRuntime:        at eA.p(Unknown Source:141)
E AndroidRuntime:        at eA.m(Unknown Source:93)
E AndroidRuntime:        at B4.v(Unknown Source:39)
E AndroidRuntime:        at B4.dispatchDraw(Unknown Source:12)
E AndroidRuntime:        at android.view.View.draw(View.java:20229)
E AndroidRuntime:        at android.view.View.updateDisplayListIfDirty(View.java:19101)
E AndroidRuntime:        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4317)
E AndroidRuntime:        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4290)
E AndroidRuntime:        at android.view.View.updateDisplayListIfDirty(View.java:19061)
E AndroidRuntime:        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4317)
E AndroidRuntime:        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4290)
E AndroidRuntime:        at android.view.View.updateDisplayListIfDirty(View.java:19061)
E AndroidRuntime:        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4317)
E AndroidRuntime:        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4290)
E AndroidRuntime:        at android.view.View.updateDisplayListIfDirty(View.java:19061)
E AndroidRuntime:        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4317)
E AndroidRuntime:        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4290)
E AndroidRuntime:        at android.view.View.updateDisplayListIfDirty(View.java:19061)
E AndroidRuntime:        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4317)
E AndroidRuntime:        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4290)
E AndroidRuntime:        at android.view.View.updateDisplayListIfDirty(View.java:19061)
E AndroidRuntime:        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4317)
E AndroidRuntime:        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4290)
E AndroidRuntime:        at android.view.View.updateDisplayListIfDirty(View.java:19061)
E AndroidRuntime:        at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:686)
E AndroidRuntime:        at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:692)
E AndroidRuntime:        at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:801)
E AndroidRuntime:        at android.view.ViewRootImpl.draw(ViewRootImpl.java:3332)
E AndroidRuntime:        at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3129)
E AndroidRuntime:        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2498)
E AndroidRuntime:        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1473)
E AndroidRuntime:        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7215)
E AndroidRuntime:        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1004)
E AndroidRuntime:        at android.view.Choreographer.doCallbacks(Choreographer.java:816)
E AndroidRuntime:        at android.view.Choreographer.doFrame(Choreographer.java:751)
E AndroidRuntime:        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:990)
E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:873)
E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:99)
E AndroidRuntime:        at android.os.Looper.loop(Looper.java:280)
E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:6710)
E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
D ActivityManager: New dropbox entry: moe.tarsin.ehviewer, data_app_crash, 07f370da-467c-4164-9786-fb27efcc11a4
W ActivityManager:   Force finishing activity moe.tarsin.ehviewer/com.hippo.ehviewer.ui.MainActivity
I Process : Sending signal. PID: 11441 SIG: 9

备注 / Addition details

This also happens if you wipe all app data and you don't even log-in. The original EhV by hippo is fine instead.

浏览站点 / Browsing site

Both

EhViewer 版本号 / EhViewer version code

1.11.3

EhViewer CI 版本 / EhViewer CI Version

a3cb6d2

Android 系统版本 / Android version

9

mirh commented 6 months ago

Great.. now it doesn't even start anymore. OTOH I reinstalled 1.11.2 and it's all fine.

FooIbar commented 6 months ago
java.lang.IllegalStateException: The display list is not valid.
       at android.view.RenderNode.getNativeDisplayList(RenderNode.java:256)
       at android.view.DisplayListCanvas.drawRenderNode(DisplayListCanvas.java:189)
       at androidx.compose.ui.graphics.layer.GraphicsLayerV23.draw(GraphicsLayerV23.android.kt:293)
       at androidx.compose.ui.graphics.layer.GraphicsLayer.draw$ui_graphics_release(AndroidGraphicsLayer.android.kt:510)
       at androidx.compose.ui.graphics.layer.LayerManager.persistLayers(LayerManager.java:78)
       at androidx.compose.ui.graphics.layer.LayerManager.persist(LayerManager.java:50)
       at androidx.compose.ui.graphics.AndroidGraphicsContext.createGraphicsLayer(AndroidGraphicsContext.android.kt:93)
       at androidx.compose.foundation.lazy.layout.LazyLayoutAnimation.<init>(LazyLayoutAnimation.kt:91)
       at androidx.compose.foundation.lazy.LazyListItemAnimator$ItemInfo.updateAnimation(LazyListItemAnimator.kt:404)
       at androidx.compose.foundation.lazy.LazyListItemAnimator.onMeasured(LazyListItemAnimator.kt:121)

It seems like your device does not support the new suggestion list item animations added in 1.11.3. I've tested it on an Android 9 emulator but can't reproduce that. I'll look into what we can do.

FooIbar commented 6 months ago

Can you provide more details about your device? Are you running a custom ROM?

mirh commented 6 months ago

No, it's the stock sony rom.

mirh commented 6 months ago

This was also spammed when the launch was still working, if it can help

I tarsin.ehviewe: Rejecting re-init on previously-failed class java.lang.Class<Vw2>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/webkit/PacProcessor;
I tarsin.ehviewe:   at java.lang.Class java.lang.Class.classForName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:-2)
I tarsin.ehviewe:   at java.lang.Class java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:453)
I tarsin.ehviewe:   at java.lang.Class android.webkit.WebViewFactory.getWebViewProviderClass(java.lang.ClassLoader) (WebViewFactory.java:176)
I tarsin.ehviewe:   at java.lang.Class android.webkit.WebViewFactory.getProviderClass() (WebViewFactory.java:459)
I tarsin.ehviewe:   at android.webkit.WebViewFactoryProvider android.webkit.WebViewFactory.getProvider() (WebViewFactory.java:251)
I tarsin.ehviewe:   at android.webkit.CookieManager android.webkit.CookieManager.getInstance() (CookieManager.java:40)
I tarsin.ehviewe:   at void RI.<clinit>() (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object Wa.c(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object n10.c(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object dg.k(zV) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object N10.c(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at void P30.<init>(V30, S30, boolean) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object Sq.d() (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object iX0.getValue() (SourceFile:-1)
I tarsin.ehviewe:   at P30 d80.G() (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object bL.i(Zs) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object TK.v(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at void Ad.r(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at void wC.run() (SourceFile:-1)
I tarsin.ehviewe:   at void G1.run() (SourceFile:-1)
I tarsin.ehviewe:   at void cZ0.run() (SourceFile:-1)
I tarsin.ehviewe:   at void Wt.run() (SourceFile:-1)
I tarsin.ehviewe: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.webkit.PacProcessor" on path: DexPathList[[zip file "/data/app/com.android.chrome-djxby0UWp2zg74VZnNTkUw==/base.apk"],nativeLibraryDirectories=[/data/app/com.android.chrome-djxby0UWp2zg74VZnNTkUw==/lib/arm64, /data/app/com.android.chrome-djxby0UWp2zg74VZnNTkUw==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
I tarsin.ehviewe:   at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:134)
I tarsin.ehviewe:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
I tarsin.ehviewe:   at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
I tarsin.ehviewe:   at java.lang.Class java.lang.Class.classForName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:-2)
I tarsin.ehviewe:   at java.lang.Class java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:453)
I tarsin.ehviewe:   at java.lang.Class android.webkit.WebViewFactory.getWebViewProviderClass(java.lang.ClassLoader) (WebViewFactory.java:176)
I tarsin.ehviewe:   at java.lang.Class android.webkit.WebViewFactory.getProviderClass() (WebViewFactory.java:459)
I tarsin.ehviewe:   at android.webkit.WebViewFactoryProvider android.webkit.WebViewFactory.getProvider() (WebViewFactory.java:251)
I tarsin.ehviewe:   at android.webkit.CookieManager android.webkit.CookieManager.getInstance() (CookieManager.java:40)
I tarsin.ehviewe:   at void RI.<clinit>() (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object Wa.c(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object n10.c(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object dg.k(zV) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object N10.c(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at void P30.<init>(V30, S30, boolean) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object Sq.d() (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object iX0.getValue() (SourceFile:-1)
I tarsin.ehviewe:   at P30 d80.G() (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object bL.i(Zs) (SourceFile:-1)
I tarsin.ehviewe:   at java.lang.Object TK.v(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at void Ad.r(java.lang.Object) (SourceFile:-1)
I tarsin.ehviewe:   at void wC.run() (SourceFile:-1)
I tarsin.ehviewe:   at void G1.run() (SourceFile:-1)
I tarsin.ehviewe:   at void cZ0.run() (SourceFile:-1)
I tarsin.ehviewe:   at void Wt.run() (SourceFile:-1)
FooIbar commented 6 months ago

Do you have the crash log when open comments list?

mirh commented 6 months ago

It's pretty much the same except

E AndroidRuntime:        at androidx.compose.foundation.lazy.b.c(Unknown Source:277)
E AndroidRuntime:        at V4.C(Unknown Source:1568)
E AndroidRuntime:        at wd0.i(Unknown Source:582)
E AndroidRuntime:        at r3.i(Unknown Source:826)
E AndroidRuntime:        at Ab0.d(Unknown Source:77)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at MP0.k(Unknown Source:0)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at Kt0.k(Unknown Source:32)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at Vf.d(Unknown Source:253)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at e70.k(Unknown Source:58)
E AndroidRuntime:        at ld.k(Unknown Source:9)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at pQ.k(Unknown Source:96)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at o8.i(Unknown Source:966)
E AndroidRuntime:        at Ab0.d(Unknown Source:77)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at Vf.d(Unknown Source:146)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at MP0.k(Unknown Source:0)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at MP0.k(Unknown Source:0)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at a8.d(Unknown Source:23)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at xM.k(Unknown Source:230)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at MP0.k(Unknown Source:0)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at P5.h(Unknown Source:722)
E AndroidRuntime:        at gb0.k(Unknown Source:7)
E AndroidRuntime:        at jb0.b(Unknown Source:14)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:55)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at sb0.b(Unknown Source:90)
E AndroidRuntime:        at U7.d(Unknown Source:39)
E AndroidRuntime:        at G60.b(Unknown Source:37)
E AndroidRuntime:        at tb0.d(Unknown Source:1555)
E AndroidRuntime:        at DF0.i(Unknown Source:113)
E AndroidRuntime:        at DS0.a(Unknown Source:51)
E AndroidRuntime:        at ES0.c(Unknown Source:139)
E AndroidRuntime:        at Nq.g(Unknown Source:4)
E AndroidRuntime:        at sb0.B0(Unknown Source:131)
E AndroidRuntime:        at androidx.compose.ui.node.a.L(Unknown Source:16)
E AndroidRuntime:        at androidx.compose.ui.node.a.M(Unknown Source:17)

Perhaps it wasn't the smartest decision to use the majority of the dependencies in beta or alpha form?

FooIbar commented 6 months ago

Perhaps it wasn't the smartest decision to use the majority of the dependencies in beta or alpha form?

Well, it will crash when reaching stable anyway if no one reports it (which is highly likely since it's a rare case). Anyways, I've added an option to disable the animations as a workaround.

FooIbar commented 6 months ago

https://github.com/FooIbar/EhViewer/actions/runs/8582078986/artifacts/1390841418 Can you test this build?

mirh commented 6 months ago

Yes it works.

FooIbar commented 6 months ago

I'm glad it works. I'll leave this issue open until it's fixed by upstream. Tracking bug: https://issuetracker.google.com/332989720

FooIbar commented 6 months ago

Upstream has patched it, would you mind testing this with list item animations enabled? https://github.com/FooIbar/EhViewer/actions/runs/8797015067/artifacts/1438578496

mirh commented 6 months ago

Yup, it works. Really thanks for the diligence.