GTK2菜单与GTK3的一致性

正如OMG中提到的那样! Ubuntu的! 在Ubuntu主题中修复了GTK3应用程序的post ,菜单和工具栏。 但是在GTK2和GTK3菜单之间的Ubuntu主题仍然存在不一致,其中GTK2应用程序不遵循菜单的主题颜色。

我知道在GTK2中也可以通过编辑gtkrc文件并将菜单样式设置为与现有的样式相同。 打开gtkrc文件,您可以看到以下行:

style "menu" { xthickness = 0 ythickness = 0 engine "murrine" { roundness = 0 } } 

修复菜单颜色就像更改第一行一样简单:

 style "menu" = "dark" { xthickness = 0 ythickness = 0 engine "murrine" { roundness = 0 } } 

但这会导致ComboBox菜单出现问题 ,尤其是Ambiance,因为颜色较深; 例如,在Tomboy偏好设置中,下拉菜单的所有条目都难以辨认:

Tomboy首选项中的ComboBox菜单

我刚刚找到了解决这个问题的方法!

gtkrc中有一行包含ComboBox菜单问题的解决方法。 解决方法使用深色的文本颜色替换ComboBox条目的颜色:

 widget "*.gtk-combobox-popup-menu.*" style "menuitem_text_is_fg_color_workaround" 

要解决这个问题,应该在行的开头插入一个标记,以便被忽略,并使用dark_fg_color着色的菜单项很亮:

 #widget "*.gtk-combobox-popup-menu.*" style "menuitem_text_is_fg_color_workaround" 

这是结果的屏幕截图:

Tomboy首选项中的ComboBox菜单