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

refresh (PoC) #216

Closed
wants to merge 2 commits into from
Closed

refresh (PoC) #216

wants to merge 2 commits into from

Conversation

Byron
Copy link
Owner

@Byron Byron commented Jan 10, 2024

Please see the commit messages for additional context.

I won't work on this, but it should show it this can work in general,
and to my mind this is already is a successful PoC, but needs work to
deal with the details.

PS: It's also unclear how well this will work with the glob navigation pane, but it's probably worth trying and maybe we are lucky. If not, ignoring these keys in the glob pane should do the trick.

- it doesn't deal with sub-trees - for that it would need awareness of the
  method that integrates tree events.
- selection handling isn't implemented, so the selection just disappears.
- if the root to be refreshed still exists, it should probably keep it selected
  instead of removing it.
- it seems useful to have some control over the scope of the refresh, and these
  are sketched with the `Refresh` enum.
@gosuwachu
Copy link
Contributor

This is as easy I as was hoping it is going to be for a simple "big-bang refresh". I will have a look what needs to be done to finish this.

Next step after that is to implement incremental updates or at least show what part of the tree is currently being updated.

@Byron
Copy link
Owner Author

Byron commented Jan 10, 2024

This is as easy I as was hoping it is going to be for a simple "big-bang refresh"

I think it's closer to live-refresh as the GUI is interactive, and it shows scanning as well. In theory, you would see things pop up as they are added to the tree, it's live after all, but the jwalk-powered traversal order doesn't support it, I think. Or in other words, if the traversal would return the top-level folder first, one would see it immediately and then its children as they appear. The traversal is already unordered as well.

Maybe tweaks to this are possible though, it seems a bit odd even though I always liked it that folders are completely known once they popup (and it would be nice to have a choice as well, like an immediate mode).

Next step after that is to implement incremental updates or at least show what part of the tree is currently being updated.

Yes, that would be optimal, and is probably going to introduce quite some complexity, maybe more than it's worth. But we will see.

@gosuwachu
Copy link
Contributor

fyi, I have found quite a lot of bugs while working on this change so it will take some time before this will be ready

@Byron
Copy link
Owner Author

Byron commented Jan 12, 2024

No worries, no need to rush, and thanks again for your incredible help with this and dua in general!

@gosuwachu
Copy link
Contributor

Done: #219 This PoC can be now closed imho.

@Byron Byron closed this Jan 14, 2024
@Byron Byron deleted the refresh branch January 14, 2024 17:38
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.

2 participants