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

Reply via email to