Summary: | Keyboard layout indicator is not usable with dark theme | ||
---|---|---|---|
Product: | [Unmaintained] kxkb | Reporter: | anton <benderamp> |
Component: | general | Assignee: | Andriy Rysin <arysin> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | aseigo |
Priority: | NOR | ||
Version: | 0.9 | ||
Target Milestone: | --- | ||
Platform: | Unlisted Binaries | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | invisible layout indicator |
Seems like it's a limitation of KStatusNotifierItem - there's no way to set the title's text color and KStatusNotifierItem does not adjust it automatically. it has nothing to do with the title or other text (that gets set correctly automatically); rather, it has to do with generating a pixmap that doesn't work on all backgrounds. the problematic call is this: ยท m_notifierItem->setIconByPixmap( textOrIcon ); textOrIcon needs to be visible on different backgrounds, e.g. black text with a white halo (or vice versa) Ahh, I guess I was looking at the wrong place: looks like at some point I was hoping m_notifierItem->setTitle(shortText); will set the text but then overrode it with drawing icon and forgot about it. It seems there's no way to set the text for KStatusNotifierItem - only icon, and there's no way to know the background and halo'ing the text is quite ugly and unreliable... I'll try to seek some help from k-c-d mailing list... SVN commit 1134934 by rysin: Provide white shadow for black text in systray Clear tray pixmap cache on configuration change BUG: 240225 M +4 -0 CMakeLists.txt M +26 -11 flags.cpp M +1 -0 flags.h M +5 -4 keyboard_applet.cpp M +1 -1 keyboard_config.cpp M +1 -0 layout_widget.cpp AM utils.cpp [License: GPL (v2+)] AM utils.h [License: GPL (v2+)] WebSVN link: http://websvn.kde.org/?view=rev&revision=1134934 |
Created attachment 47516 [details] invisible layout indicator Version: unspecified OS: Linux Keyboard layout indicator is drawn black on black with dark theme (see attached screenshot) Reproducible: Didn't try Steps to Reproduce: set some dark theme for plasma Actual Results: layout indicator would be painted with black font on dark background Expected Results: it should be drawn with some light font or should have theme-independent background as it always had.