OpenHantek / OpenHantek6022

OpenHantek6022 is a DSO software for Hantek USB digital signal oscilloscopes 6022BE / BL. Development OS is Debian Linux, but the program also works on FreeBSD, MacOS, RaspberryPi and Windows. No support for non-Linux related issues unless a volunteer steps in!
GNU General Public License v3.0
867 stars 152 forks source link

Only use font settings in the dsowidget, not in system controls or dialogs #156

Closed dougep closed 3 years ago

dougep commented 3 years ago

This change prevents the various font options from applying to dialogs, menus or controls, only applying them to the scope screen. Dialogs, menus and controls will use the system font settings for the relevant platform.

The reason for the change is partly just general consistency and user expectation, but mainly driven by the poor experience on MacBook Pros with retina displays. While I find it useful to be able to vary the font size on the scope screen itself, I think it's less useful on dialogs.

The screenshots show the before and after experience on Linux and Mac. I haven't been able to build successfully on Windows so far but expect it to be similar.

I'm not sure what's causing the other visual differences and the missing buttons on the left in the Mac build but this is the same if I build master or the latest stable release with no changes, so I'm confident I haven't actually broken anything with this change.

Retina MacBook Pro

Before

mac-before mac-before2

After

mac-after mac-after2

Linux

Before

linux-before linux-before2

After

linux-after linux-after-dso

Ho-Ro commented 3 years ago

Thanks, at first glance a good thing - but on closer inspection I find the different font sizes of the menu and docks on one side and of the scope widget on the other not harmonious. My idea behind the modification of the font sizes was also specifically aimed at achieving good readability of all texts on high-resolution screens - there I have the scope as a whole in mind and less the matching text size of the "splash screen" and the . One use case, for example, is that I am measuring a circuit and the programme is running maximised on the laptop - with a large font size for readability, both of the measured values and of the menu settings - i this case the "before" on the left pleases me more than the "after" on the right: image image

In the Linux programme, the lines with the measured values (yellow and blue) are also "uneven", the DC hangs too low. image

If you manage to show the startup window in system font size (to be consistent with OS look and feel) and apply the OH6022 font size to all text of the scope (to maintain equal readability) I could implement your PR.

dougep commented 3 years ago

In the Linux programme, the lines with the measured values (yellow and blue) are also "uneven", the DC hangs too low.

Well spotted, I hadn't seen that. It happens on Mac too.

It's actually also happening in the current stable release and latest master builds, but for some reason less prominent and only apparent at small font sizes. I can see a single pixel misalignment on a 10pt font on Mac when I zoom in on it. I'll have a dig into that and reply to your comment later when I get some time.

Ho-Ro commented 3 years ago

Another argument against "big docks - small measurement" is that using a small font size allows to shrink the overall size and fit the whole scope on small screens of old laptops (1280x720 or even 1024x768), often found e.g. for educational or lab usage.

Ho-Ro commented 3 years ago

If you manage to show the startup window in system font size (to be consistent with OS look and feel) and apply the OH6022 font size to all text of the scope (to maintain equal readability) I could implement your PR.

That was easier than I thought - done with 46bc3df

Ho-Ro commented 3 years ago

I consider my solution 46bc3df easier than the PR - closed.