Replace loading and saving popups with procedural animations #3304
+72
−27
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose: The loading and saving popups interfere with scrolling through presets as they block the text for the presets. There are other cases where this is an issue, but this is the main one. The text was supposed to have an animated period at the end, presumably to indicate that it is still working and not frozen. That animation has never worked as intended, because a timer was only set once for the standard popup time of 800 ms, rather than a shorter timer which would be set again on each update. I sought to create something pleasing to the eye, and unique to the Deluge.
https://github.com/user-attachments/assets/5d56e405-a8b7-4b1b-8cad-e20ea2228043
This video recording of the OLED screen shows the initial loading animation as well as how it looks on all subsequent cycles. The saving animation is a mirror image of this (mirrored around the vertical centerline of it).
It clears a 1 pixel border around the animation, which only comes into play on certain views, such as the special save that collects media where there is a popup window. The animation is removed as soon as the working process is completed. It also has a 350ms delay before the animation starts, so it will save resources on the majority of load/save operations.
Note: I submitted a similar PR on a different branch with an early version of this update that involved icons, but I deleted that branch after I royally screwed it up and just couldn't deal with it.