To avoid "flashing" the placeholder, we wait a period of time before starting the loading animation.
If loading completes during this time the placehoder is not shown, otherwise is it displayed for a minimum period of time.
States:
0: Loading - Wait for a period of time before starting the loading animation.
1: Fade-in - Display a loading animation.
2: Fade-out - Fade out the loading animation.
3: Done - Remove the placeholder.
To avoid "flashing" the placeholder, we wait a period of time before starting the loading animation. If loading completes during this time the placehoder is not shown, otherwise is it displayed for a minimum period of time.
States: 0: Loading - Wait for a period of time before starting the loading animation. 1: Fade-in - Display a loading animation. 2: Fade-out - Fade out the loading animation. 3: Done - Remove the placeholder.