docker / kitematic

Visual Docker Container Management on Mac & Windows
https://kitematic.com
Apache License 2.0
12.25k stars 1.41k forks source link

Progress circle should use fixed-width digit font #3658

Open rillig opened 6 years ago

rillig commented 6 years ago

image

Expected behavior

During "Starting Docker VM", the progress is visualized in a circle. When the percentage changes from 60 to 61, the percentage character should stay in place, to avoid any flickering appearance. Same for the 6, which also didn't change.

Actual behavior

The whole string %d%% is centered, therefore the 6 and the % each jump by a few pixels. This makes the screen more nervous than necessary.

Workaround (for developers)

If using a font with fixed-width digits is not possible, it would help to draw each digit individually in this case, reserving the maximum necessary width for each digit.

FrenchBen commented 6 years ago

@rillig Thanks for the issue and your attention to detail - Is this something you'd consider opening a PR for?

rillig commented 6 years ago

Yes, I definitely and intentionally considered opening a PR for this.

Kitematic has a minimalistic UI, in which each non-white pixel has its purpose. Therefore, when some of these pixels flicker, they make me look at them, only to discover that nothing essential has changed. Whether the progress is at 60% or at 61% doesn't really matter, nevertheless some more pixels changed their color.

This contradicts the quiet and unobtrusive style and design that Kitematic is using.

A recent blog article has some nice screen videos of other applications showing the same behavior.

shandheap commented 6 years ago

Hey @rillig, are you still working on this? If not, I'd like to work on this issue for my first PR.

rillig commented 6 years ago

Hi @shandheap, I have never "worked" on this. I just reported it in the hope that it would be fixed someday.

shandheap commented 6 years ago

Hey @rillig, I just wanted to ask just in case you opened a PR for it. I couldn't reproduce this issue on my machine anyway so I'm guessing it's fixed?