broulik created this revision.
broulik added reviewers: Plasma, VDG.
Herald added a project: Plasma.
Herald added a subscriber: plasma-devel.
broulik requested review of this revision.
REVISION SUMMARY
kcminit for performance reasons is not desktop settings aware which means it
won't load the plasma integration plugin and as such not apply the color scheme
to Qt's widgets.
When writing the GTK config, it would read them from `kdeglobals` directly.
However, for tooltips it would use `QToolTip::palette()` which would then use
Qt's default palette in kcminit. Use the `QPalette` we created from
`kdeglobals` to get the tooltip colors instead.
BUG: 355540
FIXED-IN: 5.12.8
TEST PLAN
Because of a bug preventing proper propagation of environment variables to
apps launched through Kickoff/KRunner (KRun?) via klauncher(??) this is hardly
noticeable but when you e.g. open Gimp or Inkscape through "Open With" in
Dolphin or manually using
GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:$HOME/.gtkrc-2.0:$HOME/.config/gtkrc-2.0
gimp
I didn't fully understand where it gets the tooltip base vs background from,
so here are the compared values:
Incorrect colors applied on startup by kcminit (note the light `bg`):
style "ToolTip"
{
bg[NORMAL] = { 0.937, 0.937, 0.937 }
base[NORMAL] = { 1.000, 1.000, 1.000 }
text[NORMAL] = { 0.000, 0.000, 0.000 }
fg[NORMAL] = { 0.000, 0.000, 0.000 }
}
Without this patch colors applied correctly when hitting Apply in the Color
KCM:
style "ToolTip"
{
bg[NORMAL] = { 0.192, 0.212, 0.231 }
base[NORMAL] = { 0.137, 0.149, 0.161 }
text[NORMAL] = { 0.937, 0.941, 0.945 }
fg[NORMAL] = { 0.937, 0.941, 0.945 }
}
Colors applied consistently with this patch, notice how `base` is now same as
`bg` and different from the previous correct case:
style "ToolTip"
{
bg[NORMAL] = { 0.192, 0.212, 0.231 }
base[NORMAL] = { 0.192, 0.212, 0.231 }
text[NORMAL] = { 0.937, 0.941, 0.945 }
fg[NORMAL] = { 0.937, 0.941, 0.945 }
}
REPOSITORY
R119 Plasma Desktop
REVISION DETAIL
https://phabricator.kde.org/D18482
AFFECTED FILES
kcms/krdb/krdb.cpp
To: broulik, #plasma, #vdg
Cc: plasma-devel, jraleigh, GB_2, ragreen, Pitel, ZrenBot, lesliezhai,
ali-mohamed, jensreuterberg, abetts, sebas, apol, mart