Thank you for the reply.
That helped me to figure it out.
But I had to create a separate Colorizer. (see below)
Is there a way to use the same colorizer as goToSelected?
Thanks!
myGSFont = "xft:Noto Sans CJK KR:bold:pixelsize=10"
myColorizer :: Window -> Bool -> X (String, String)
myColorizer = colorRangeFromClassName
(0x31,0x2e,0x39) -- lowest inactive bg
(0x31,0x2e,0x39) -- highest inactive bg
(0x78,0x3e,0x57) -- active bg
(0xc0,0xa7,0x9a) -- inactive fg
(0xff,0xff,0xff) -- active fg
gridColorizer :: a -> Bool -> X (String, String)
gridColorizer _ True = return ("#00aa00", "black")
gridColorizer _ False = return ("#333333", "#cccccc")
myGSConfig :: t -> GSConfig Window
myGSConfig colorizer = (buildDefaultGSConfig myColorizer)
{ gs_cellheight = 30
, gs_cellwidth = 200
, gs_cellpadding = 6
, gs_originFractX = 0.5
, gs_originFractY = 0.5
, gs_colorizer = myColorizer
, gs_font = myGSFont
}
-- spawnSelected Redefine
spawnSelected' :: [(String, String)] -> X ()
spawnSelected' lst = gridselect conf lst >>= flip whenJust spawn
where conf = def
{ gs_cellheight = 30
, gs_cellwidth = 200
, gs_cellpadding = 6
, gs_originFractX = 0.5
, gs_originFractY = 0.5
, gs_colorizer = gridColorizer
, gs_font = myGSFont
}
, ((mod4Mask, xK_g), goToSelected $ myGSConfig myColorizer)
, ((mod4Mask, xK_y), spawnSelected' myAppGrid)
, ((mod4Mask, xK_u), runSelectedAction (buildDefaultGSConfig gridColorizer)
[ ("Chromium", spawnHere "chromium")
, ("Hexchat", spawnHere "hexchat")