Skip to content

Conversation

@ananasmoe
Copy link
Member

@ananasmoe ananasmoe commented Dec 29, 2025

image

@THEGOLDENPRO
Copy link
Member

THEGOLDENPRO commented Dec 29, 2025

yeah so in the last few commits I moved some source files...

but we can fix this

@ananasmoe
Copy link
Member Author

what the fuck?

alright i'm too tired for this shi, fix the merge conflicts pls thanks :3

@THEGOLDENPRO
Copy link
Member

fix the merge conflicts pls thanks :3

no worries, will do

@THEGOLDENPRO
Copy link
Member

THEGOLDENPRO commented Dec 29, 2025

ReverseGeocoder::new() takes too long to initialize, there's an actual delay until image info opens, although no need to worry because I was planning to make ExpensiveData::new() run in an asynchronous manner anyways as checking the size of a file may also take a while too.

This should be possible with just normal rust threading and putting ExpensiveData behind a Mutex<T>, then try_lock while trying to read it for the grid fields. If it fails to lock that means the thread is still writing to the data hence we should just set the specific field (e.g: file size) to something like unknown or loading, then when the data is available it will automatically allow us to lock and read.

@THEGOLDENPRO
Copy link
Member

THEGOLDENPRO commented Dec 29, 2025

Also I'll like a config to disable this feature. Not sure where to put though, most likely under [ui].

@THEGOLDENPRO
Copy link
Member

THEGOLDENPRO commented Dec 29, 2025

Oh write we should also fallback to file creation date for originally created exif tag. I should have wrote that in a comment sorry.

image

@ananasmoe
Copy link
Member Author

I'll try implementing the try_lock stuff and you mean that the location can be disabled in the config?

@THEGOLDENPRO
Copy link
Member

Yeah I was thinking of a config to hide it but maybe the setting should also disable initing ReverseGeocoder completely.

@ananasmoe
Copy link
Member Author

Screencast_20251230_154159

@THEGOLDENPRO

@THEGOLDENPRO
Copy link
Member

I'm on mobile right now so I can't see all the code properly yet but why didn't you just thread it on line 440 (where we do get_or_insert)? That was my plan and I think it would have been a lot easier. You wouldn't have needed to change anything on ExpensiveData.

@ananasmoe
Copy link
Member Author

ananasmoe commented Dec 31, 2025

I'm on mobile right now so I can't see all the code properly yet but why didn't you just thread it on line 440 (where we do get_or_insert)? That was my plan and I think it would have been a lot easier. You wouldn't have needed to change anything on ExpensiveData.

honestly uhm, it just didn't pop into my head that i could do that.

@THEGOLDENPRO
Copy link
Member

THEGOLDENPRO commented Dec 31, 2025

btw I'll fix the merge conflicts for you dw.

@THEGOLDENPRO
Copy link
Member

This is a really cool feature btw, thanks.

image

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

Successfully merging this pull request may close these issues.

3 participants