[kcms/fonts] Guide users towards KScreen KCM for making things bigger on-screen
ClosedPublic

Authored by ngraham on Apr 22 2020, 2:58 AM.

Details

Summary

Many users seem to like using Force Fonts DPI or (less commonly) the font sizes to
increase the scale of UI elememnts to suit their screen. This is not the recommended
approach, and we are constantly telling users this in bug reports and social media, but
there's nothing in the UI itself to make people aware of that in the first place.

This patch is an attempt to rectify that by showing gentle informational messages guiding
users towards the KScreen KCM if they adjust settings on the Fonts KCM in a way that
suggests they are trying to make everything bigger.

Test Plan

Diff Detail

Repository
R119 Plasma Desktop
Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 25655
Build 25673: arc lint + arc unit
ngraham created this revision.Apr 22 2020, 2:58 AM
Restricted Application added a project: Plasma. · View Herald TranscriptApr 22 2020, 2:58 AM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
ngraham requested review of this revision.Apr 22 2020, 2:58 AM
ngraham added inline comments.Apr 22 2020, 3:02 AM
kcms/fonts/fonts.cpp
229

Nothing was previously listening for this signal, so I believe it is safe to repurpose it for something else as I have done in this patch.

ngraham updated this revision to Diff 80831.Apr 22 2020, 3:03 AM

Add clarifying comment

cblack accepted this revision.Apr 22 2020, 3:04 AM
This revision is now accepted and ready to land.Apr 22 2020, 3:04 AM
ahmadsamir added a subscriber: ahmadsamir.

Does InlineMessage have a "Don't show again" capability? it'll become irritating after seeing it 1-2 times.

IIUC, the fontsHaveChanged() signal, nothing is listening to it in KDE code doesn't mean other 3rd party software isn't, and it's a change in behaviour for the KCM; I am not sure if it can be repurposed.

I like that. KCMs should be more inter-connected anyway. The message could just be shown all the time instead of making it dependent on the font size selected but no need to change that now.

I like that. KCMs should be more inter-connected anyway. The message could just be shown all the time instead of making it dependent on the font size selected but no need to change that now.

Thanks! I didn't want to show the message all the time as I thought it might get really irritating to the kind of contrarian user who doesn't like being told what to do.

Does InlineMessage have a "Don't show again" capability? it'll become irritating after seeing it 1-2 times.

I was concerned about that too, which is why I set the visibility imperatively rather than with a binding. So with this patch, once you dismiss it, you won't see it again until and unless you change the settings again in a way that would tripped it once more.

IIUC, the fontsHaveChanged() signal, nothing is listening to it in KDE code doesn't mean other 3rd party software isn't, and it's a change in behaviour for the KCM; I am not sure if it can be repurposed.

Seems a bit unlikely to me that other KDE software or even 3rd-party software would be listening for this signal, and IIRC the signal was added after 5.18 anyway so it hasn't been released yet. But hopefully @bport or a Plasma person can shed some light on whether or not this is a bad idea.

This revision was automatically updated to reflect the committed changes.
broulik added a subscriber: broulik.May 2 2020, 7:24 PM

Very lovely idea!

kcms/fonts/package/contents/ui/main.qml
36

Why this as a property, not just an Action with an id?

70

Why 18 here?

71

You could also just bind visible to the boolean expression in the if:

hugeFontsMessage.visible = foo || bar || baz || bla
ngraham marked 4 inline comments as done.EditedMay 4 2020, 7:31 PM