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

dealer list forgets about icons #170

Open
YiffyToys opened this issue Sep 12, 2024 · 8 comments
Open

dealer list forgets about icons #170

YiffyToys opened this issue Sep 12, 2024 · 8 comments

Comments

@YiffyToys
Copy link

Android app release 5.0.0

Flinging up and down in the dealer list,
thumbnail icons for dealers start to randomly vanish.
The more you scroll, the more icons disappear.

Not replaced with a placeholder or loading animation like Picasso, Glide or similar image-loading libraries do but with a blank background.
Not appearing again after waiting a while

@lukashaertel
Copy link
Collaborator

I can reproduce. The image library uses glide under the hood, so I'm guessing it's an upstream bug. I can check if changing some options helps.

@YiffyToys
Copy link
Author

I don't think glide is responsible.
The icons disapear when out of screen.
Thus when the list elements are recycled.
It looks like an attempt to load them is made only once
and they are not stored in the model but in the view and then not loaded again when the view gets recycled.

@lukashaertel
Copy link
Collaborator

There's compatibility options for images in the virtualized list implementation we use, I'll have a look.

@lukashaertel
Copy link
Collaborator

So far it doesn't help, might be an issue because we have section headers, which is a valid, but more elaborate way of using flash list.

So far I've upgraded the versions, applied recycleKey, removed the placeholder, but no luck yet.

We might need to push this issue back unless I have an eureka moment

@YiffyToys
Copy link
Author

Were in the code is it?
I develop native Android apps, so react isn't my playing field but I have a good understanding of the lifecycle and recycling of objects.

@lukashaertel
Copy link
Collaborator

<Image style={[avatarBackground, styles.avatarCircle]} source={avatar} contentFit="contain" placeholder={assetSource("ych")} transition={60} />

@YiffyToys
Copy link
Author

I suggest to add an onError in additipn to onLoadStart and onLoadEnd here
https://github.com/eurofurence/ef-app_react-native/blob/bd199a93ab722a988fe8c7c64def432c44f51c9b/src/components/generic/atoms/Image.tsx

As it can be reproduced locally, a simple logcat-output should tell us why it fails.

@lukashaertel
Copy link
Collaborator

I had a console log in there but it didn't trigger

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

2 participants