Skip to content

Instantly share code, notes, and snippets.

@TiZ-HugLife
Created February 11, 2015 04:07
Show Gist options
  • Save TiZ-HugLife/9b5656ca82b564e6da55 to your computer and use it in GitHub Desktop.
Save TiZ-HugLife/9b5656ca82b564e6da55 to your computer and use it in GitHub Desktop.
gtkrc files
gtk-enable-mnemonics = 0
gtk-auto-mnemonics = 1
gtk-icon-sizes = "gtk-large-toolbar=22,22:gtk-small-toolbar=16,16"
# I like small scrollbars.
style "size-default" {
GtkScrollbar::slider-width = 8
}
class "GtkWidget" style "size-default"
# I don't like displacement.
style "no-displacement" {
GtkButton::child-displacement-x = 0
GtkButton::child-displacement-y = 0
}
class "GtkWidget" style "no-displacement"
# Gets rid of resize grips.
style "no-resize-grip" {
GtkWindow::resize-grip-height = 0
GtkWindow::resize-grip-width = 0
}
class "GtkWidget" style "no-resize-grip"
# I like big menu separators.
style "size-separator-menu-item"
{
xthickness = 1
ythickness = 0
GtkSeparatorMenuItem::horizontal-padding = 0
GtkWidget::wide-separators = 1
GtkWidget::separator-width = 0
GtkWidget::separator-height = 7
}
widget_class "*<GtkSeparatorMenuItem>*" style "size-separator-menu-item"
# Makes pane separators thin and sleek.
style "mod-sidebar-paned" {
GtkPaned::handle-size = 1
# Setting contrast to 0 makes the handle go away.
engine "murrine" { contrast = 0.0 }
}
widget_class "*<GtkPaned>" style "mod-sidebar-paned"
include ".themes/panel.gtkrc"
include ".themes/widget-sizes.gtkrc"
include ".themes/thunar.gtkrc"
include ".themes/apps.gtkrc"
include ".themes/whisker-numix.gtkrc"
include ".themes/numix-toolbars.gtkrc"
# Misc app specific styling. Not much in here right now but I keep it as a separate file in case.
# This gets rid of the space around Geany's bottom pane.
style "custom-geany-slim" {
xthickness = 0
ythickness = 0
}
widget "GeanyMainWindow.GtkVBox.GtkVPaned.GtkScrolledWindow" style "custom-geany-slim"
widget "GeanyMainWindow.GtkVBox.GtkVPaned.GtkScrolledWindow.GtkViewport" style "custom-geany-slim"
# Gives some apps dark toolbars to blend with Numix. (Basically just thunar right now.)
style "mod-dark-toolbar" {
GtkToolbar::shadow-type = GTK_SHADOW_INSET
bg[NORMAL] = "#2d2d2d"
bg[PRELIGHT] = mix (0.21, "#dcdcdc", "#2d2d2d")
bg[SELECTED] = mix (0.21, "#dcdcdc", "#2d2d2d")
bg[ACTIVE] = shade (0.9, "#2d2d2d")
bg[INSENSITIVE] = "#2d2d2d"
fg[NORMAL] = "#dcdcdc"
fg[PRELIGHT] = shade (1.08, "#dcdcdc")
fg[SELECTED] = shade (1.08, "#dcdcdc")
fg[ACTIVE] = "#dcdcdc"
fg[INSENSITIVE] = mix (0.5, "#2d2d2d", "#dcdcdc")
engine "murrine" {
roundness = 0
}
}
widget_class "ThunarWindow*<GtkToolbar>*" style "mod-dark-toolbar"
widget_class "Thunderbird*<GtkToolbar>*" style "mod-dark-toolbar"
# Most of this code shamelessly jacked from Greybird.
#gtk-color-scheme = "panel_bg:#141414\npanel_fg:#e5e5e5
#gtk-color-scheme = "panel_sel_bg:#2192a3\npanel_sel_fg:#ffffff"
style "custom-theme-panel"
{
GtkMenuBar::shadow-type = GTK_SHADOW_NONE
xthickness = 0
ythickness = 0
bg[NORMAL] = "#161616"
bg[ACTIVE] = "#242424"
bg[PRELIGHT] = shade (0.85, "#2192A3")
bg[SELECTED] = mix (0.50, "#161616", "#2192A3")
fg[NORMAL] = shade (0.9, "#ffffff")
fg[PRELIGHT] = "#ffffff"
fg[ACTIVE] = shade (0.9, "#ffffff")
fg[SELECTED] = shade (0.9, "#ffffff")
text[NORMAL] = shade (0.9, "#ffffff")
text[PRELIGHT] = "#ffffff"
text[ACTIVE] = shade (0.9, "#ffffff")
text[SELECTED] = shade (0.9, "#ffffff")
engine "murrine" {
roundness = 0
glowstyle = 0
glazestyle = 0
lightborder_shade = 1.0
highlight_shade = 1.0
contrast = 0.0
gradient_shades = { 1.0, 0.85, 0.85, 0.7 }
roundness = 0
reliefstyle = 0
textstyle = 1
text_shade = 0.2
}
}
style "custom-theme-panel-text"
{
fg[NORMAL] = "#ffffff"
fg[PRELIGHT] = "#ffffff"
fg[ACTIVE] = "#ffffff"
text[NORMAL] = "#ffffff"
text[PRELIGHT] = "#ffffff"
text[ACTIVE] = "#ffffff"
}
style "custom-panel-entry" = "custom-theme-panel"
{
fg[NORMAL] = "#000000"
fg[PRELIGHT] = "#000000"
fg[ACTIVE] = "#000000"
fg[SELECTED] = "#000000"
fg[INSENSITIVE] = "#000000"
text[NORMAL] = "#000000"
text[PRELIGHT] = "#000000"
text[ACTIVE] = "#000000"
text[SELECTED] = "#000000"
text[INSENSITIVE] = "#000000"
}
style "custom-theme-main-menu-text" = "custom-theme-panel-text"
{
font_name = "Bold"
fg[PRELIGHT] = "#ffffff"
text[PRELIGHT] = "#ffffff"
}
style "custom-workspace-switcher" = "custom-theme-panel"
{
bg[SELECTED] = shade (0.8, "#2192A3")
}
style "custom-tasklist" = "custom-theme-panel"
{
xthickness = 2
ythickness = 0
bg[ACTIVE] = mix (0.5, "#161616", "#2192A3")
bg[PRELIGHT] = shade (0.85, "#2192A3")
bg[SELECTED] = shade (0.85, "#2192A3")
fg[NORMAL] = shade (0.9, "#ffffff")
fg[ACTIVE] = "#ffffff"
fg[PRELIGHT] = "#ffffff"
}
style "custom-indicator" = "custom-theme-panel"
{
xthickness = 0
ythickness = 0
}
style "custom-whisker-panel" = "custom-theme-panel"
{
ythickness = 0
}
style "custom-meter" = "custom-theme-panel"
{
xthickness = 1
ythickness = 1
}
widget "*PanelWidget*" style "custom-theme-panel"
widget "*PanelApplet*" style "custom-theme-panel"
widget "*fast-user-switch*" style "custom-theme-panel"
widget "*CPUFreq*Applet*" style "custom-theme-panel"
class "PanelApp*" style "custom-theme-panel"
class "PanelToplevel*" style "custom-theme-panel"
widget_class "*PanelToplevel*" style "custom-theme-panel"
widget_class "*notif*" style "custom-theme-panel"
widget_class "*Notif*" style "custom-theme-panel"
widget_class "*Tray*" style "custom-theme-panel"
widget_class "*tray*" style "custom-theme-panel"
widget_class "*computertemp*" style "custom-theme-panel"
widget_class "*Applet*Tomboy*" style "custom-theme-panel"
widget_class "*Applet*Netstatus*" style "custom-theme-panel"
# Fixes for tooltip text in some apps.
widget_class "*Notif*Beagle*" style "custom-theme-panel"
widget_class "*Notif*Brasero*" style "custom-theme-panel"
# XFCE panel theming.
widget "*Xfce*Panel*" style "custom-theme-panel"
class "*Xfce*Panel*" style "custom-theme-panel"
widget "*WnckPager*" style "custom-workspace-switcher"
widget "*PagerButtons*" style "custom-tasklist"
# Whisker menu theming.
widget "*Xfce*Panel*isker" style "custom-whisker-panel"
# Make sure panel text color doesn't change
widget_class "*Panel*MenuBar*" style "custom-theme-main-menu-text"
widget_class "*Panel*<GtkMenuBar>*" style "custom-theme-main-menu-text"
widget "*.clock-applet-button.*" style "custom-theme-panel-text"
widget "*PanelApplet*" style "custom-theme-panel-text"
# Override general panel-style with specific plugin-styles
widget_class "*Xfce*notif*" style "custom-theme-panel"
widget_class "*Xfce*Notif*" style "custom-theme-panel"
widget "*Xfce*ail*lugin*" style "custom-indicator"
widget "*Xfce*ixer*lugin*" style "custom-indicator"
widget "*Xfce*auncher*" style "custom-indicator"
widget "*Xfce*ystem*" style "custom-meter"
widget "*Xfce*attery*" style "custom-meter"
widget "*indicator-applet*" style "custom-indicator"
widget "*indicator-button*" style "custom-indicator"
widget "*XfceTasklist*" style "custom-tasklist"
# Tweaks for Thunar to make it look exactly how I want it. Also taken mostly from Greybird.
style "mod-sidepane" {
base[NORMAL] = "#ececec"
base[INSENSITIVE] = "#ececec"
bg[NORMAL] = "#ececec"
}
style "mod-slim" {
xthickness = 0
ythickness = 0
}
style "mod-iconview" {
ThunarIconVIew::cell-spacing = 0
ThunarIconView::cell-padding = 0
ThunarIconView::cell-text-width-proportion = 1.5
}
style "mod-thunar-toolbar" {
GtkToolbar::shadow-type = GTK_SHADOW_INSET
}
widget_class "ThunarWindow*Toolbar" style "mod-thunar-toolbar"
#widget_class "*ThunarShortcutsView*" style "mod-sidepane"
#widget_class "*ThunarTreeView*" style "mod-sidepane"
widget_class "*ThunarIconView*" style "mod-iconview"
widget_class "ThunarWindow*View" style "mod-slim"
widget_class "ThunarWindow*Pane" style "mod-slim"
style "mod-window" {
bg[NORMAL] = "#f9f9f9"
bg[INSENSITIVE] = "#f9f9f9"
bg[ACTIVE] = "#f9f9f9"
}
style "mod-paned" {
bg[NORMAL] = "#888888"
bg[INSENSITIVE] = "#888888"
bg[ACTIVE] = "#888888"
}
widget_class "ThunarWindow" style "mod-window"
widget_class "ThunarWindow*HPaned" style:highest "mod-window"
widget_class "*ThunarStatusbar*" style:highest "mod-window"
style "mod-base-statusbar" {
bg[NORMAL] = "#f9f9f9"
bg[INSENSITIVE] = "#f9f9f9"
GtkWindow::resize-grip-height = 0
GtkWindow::resize-grip-width = 0
}
#widget_class "*ThunarStatusbar*" style:highest "mod-base-statusbar"
style "mod-sidepane-header" = "mod-sidepane" {
font_name = "Bold"
bg[ACTIVE] = "#ececec"
engine "murrine" {
gradient_shades = {1.0,1.0,1.0,1.0}
lightborder_shade = 1.0
contrast = 0.0
reliefstyle = 0
}
}
# Gtk2 Open-File Dialog
widget_class "*GtkFileChooserWidget.GtkFileChooserDefault.GtkVBox.GtkHPaned.GtkVBox.GtkScrolledWindow.GtkTreeView*" style "mod-sidepane"
widget_class "*GtkFileChooserWidget.GtkFileChooserDefault.GtkVBox.GtkHPaned.GtkVBox.GtkScrolledWindow.<GtkTreeView>.<GtkButton>" style "mod-sidepane-header"
# Makes the whisker menu fit in with Numix.
style "whisker-default" {
#fg[NORMAL] = "#dcdcdc"
#fg[PRELIGHT] = "#ffffff"
#fg[ACTIVE] = "#ffffff"
#fg[INSENSITIVE] = "#dcdcdc"
#bg[NORMAL] = "#2d2d2d"
#bg[PRELIGHT] = "#226f7a"
#bg[INSENSITIVE] = "#2d2d2d"
#bg[ACTIVE] = "#1c5d66"
#text[NORMAL] = "#dcdcdc"
#text[PRELIGHT] = "#ffffff"
#text[ACTIVE] = "#ffffff"
#text[INSENSITIVE] = "#dcdcdc"
#base[NORMAL] = "#363636"
base[PRELIGHT] = "#226f7a"
base[ACTIVE] = "#226f7a"
#base[INSENSITIVE] = "#363636"
bg[NORMAL] = "#2d2d2d"
bg[PRELIGHT] = "#226f7a"
#bg[SELECTED] = mix (0.21, "#dcdcdc", "#2d2d2d")
bg[ACTIVE] = shade (0.9, "#2d2d2d")
bg[INSENSITIVE] = "#2d2d2d"
fg[NORMAL] = "#dcdcdc"
fg[PRELIGHT] = shade (1.08, "#dcdcdc")
fg[SELECTED] = shade (1.08, "#dcdcdc")
fg[ACTIVE] = "#dcdcdc"
fg[INSENSITIVE] = mix (0.5, "#2d2d2d", "#dcdcdc")
base[NORMAL] = mix (0.21, "#dcdcdc", "#2d2d2d")
#base[PRELIGHT] = "#226f7a"
#base[SELECTED] = "#226f7a"
#base[ACTIVE] = mix (0.21, "#dcdcdc", "#2d2d2d")
base[INSENSITIVE] = shade(1.2, "#2d2d2d")
text[NORMAL] = "#dcdcdc"
text[PRELIGHT] = "#f9f9f9"
text[SELECTED] = "#f9f9f9"
text[ACTIVE] = "#f9f9f9"
text[INSENSITIVE] = mix (0.5, "#2d2d2d", "#dcdcdc")
}
widget "whiskermenu-window*" style "whisker-default"
# This gtkrc file is basically Greybird with all of the aesthetic styling
# stripped out. Basically, it forces every theme to use Greybird's widget
# sizes.
####################
## Default Styles ##
####################
style "size-default"
{
GtkButton ::child-displacement-x = 0
GtkButton ::child-displacement-y = 0
GtkButton ::default-border = { 0, 0, 0, 0 }
GtkCheckButton ::indicator-size = 15
GtkEntry ::honors-transparent-bg-hint = 1
GtkEntry ::progress-border = { 2, 2, 2, 2 }
GtkEntry ::state-hint = 0
GtkImage ::x-ayatana-indicator-dynamic = 1
GtkMenu ::horizontal-padding = 0
# GtkMenu ::vertical-padding = 0
# GtkPaned ::handle-size = 3
# GtkNotebook ::tab-overlap =-2
GtkProgressBar ::min-vertical-bar-width = 10
GtkProgressBar ::min-horizontal-bar-height = 10
GtkMenuBar ::internal-padding = 0
GtkMenuBar ::window-dragging = 1
GtkExpander ::expander-size = 12
GtkToolbar ::internal-padding = 0
GtkTreeView ::expander-size = 10
GtkTreeView ::vertical-separator = 0
GtkScrollbar ::slider-width = 8
#GtkScrollbar ::activate-slider = 1
GtkScrollbar ::trough-border = 0
GtkWidget ::focus-line-width = 1
GtkWidget ::focus-padding = 0
# GtkWindow ::resize-grip-height = 13
# GtkWindow ::resize-grip-width = 13
xthickness = 1
ythickness = 1
}
style "size-wide"
{
xthickness = 2
ythickness = 2
}
style "size-wider"
{
xthickness = 3
ythickness = 3
}
style "size-notebook-button"
{
xthickness = 2 # Width of tabs and notebook borders.
ythickness = 2
}
style "size-notebook"
{
xthickness = 2 # Width of tabs and notebook borders.
ythickness = 2 # Height of tabs and notebook borders.
}
style "size-menu"
{
ythickness = 3
xthickness = 0
}
style "size-menubar" = "size-menu"
{
xthickness = 3
ythickness = 2
}
style "size-menubar-menuitem"
{
ythickness = 4
xthickness = 2
}
style "size-separator-menu-item"
{
xthickness = 1
ythickness = 0
GtkSeparatorMenuItem::horizontal-padding = 0
GtkWidget::wide-separators = 1
GtkWidget::separator-width = 0
GtkWidget::separator-height = 7
}
style "size-treeview-header" = "size-wider"
{
xthickness = 2
ythickness = 1
}
style "size-tooltips" = "size-wider"
{
xthickness = 7
ythickness = 4
}
style "size-progressbar"
{
xthickness = 0
ythickness = 0
}
style "size-statusbar"
{
xthickness = 2
}
style "size-combo"
{
xthickness = 4
}
style "size-scale" = "size-wider"
{
GtkWidget ::focus-line-width = 0
GtkWidget ::focus-padding = 0
}
style "size-toolbar-separator" {
xthickness = 0
ythickness = 1
GtkVSeparator::vertical-padding = 0
GtkWidget::wide-separators = 1
GtkWidget::separator-width = 7
GtkWidget::separator-height = 1
}
style "size-xfwm-tabwin"
{
Xfwm4TabwinWidget::border-width = 1
Xfwm4TabwinWidget::icon-size = 64
}
###############################################################################
# The following part of the gtkrc applies the different styles to the widgets.
###############################################################################
# Murrine default style is applied to every widget.
class "GtkWidget" style "size-default"
# Increase the x/ythickness in some widgets.
class "GtkFrame" style "size-wide"
class "GtkEntry" style "size-wider"
class "GtkSeparator" style "size-wide"
class "GtkCalendar" style "size-wide"
class "GtkSpinButton" style "size-combo"
class "GtkScale" style "size-scale"
class "GtkVScale" style "size-scale"
class "GtkHScale" style "size-scale"
# General matching following, the order is choosen so that the right styles override each other eg. progressbar needs to be more important then the menu match.
widget_class "*<GtkButton>" style "size-wider"
widget_class "*<GtkNotebook>" style "size-notebook"
widget_class "*<GtkStatusbar>*" style "size-statusbar"
widget_class "*<GtkNotebook>*<GtkButton>" style "size-notebook-button"
widget_class "*<GtkNotebook>*<GtkButton>*<GtkLabel>" style "size-notebook-button"
widget_class "*<GtkComboBoxEntry>*" style "size-combo"
widget_class "*<GtkCombo>*" style "size-combo"
widget_class "*<GtkViewport>*" style "size-wider"
widget_class "*<GtkEntry>*" style "size-wider"
widget_class "*<GtkMenuBar>.<GtkMenuItem>*" style "size-menubar-menuitem"
widget_class "*<GtkMenu>*" style "size-menu"
widget_class "*<GtkMenuBar>*" style "size-menubar"
widget_class "*<GtkSeparatorMenuItem>*" style "size-separator-menu-item"
# Scale widget in menus (e.g. ubuntu's sound indicator)
widget_class "*<GtkMenuItem>.*.<GtkScale>" style "size-scale"
widget_class "*<GtkProgress>" style "size-progressbar"
widget_class "*<GtkProgressBar>" style "size-progressbar"
# Treeview header
widget_class "*.<GtkTreeView>.<GtkButton>" style "size-treeview-header"
widget_class "*.<GtkCTree>.<GtkButton>" style "size-treeview-header"
widget_class "*.<GtkList>.<GtkButton>" style "size-treeview-header"
widget_class "*.<GtkCList>.<GtkButton>" style "size-treeview-header"
widget_class "*GnmSimpleCanvas*" style "size-treeview-header" # Gnumeric treeview-headers
# Xfce specific theming
widget "xfwm4-tabwin*" style "size-xfwm-tabwin"
# The window of the tooltip is called "gtk-tooltip"
################################
# FIXME:
# This will not work if one embeds eg. a button into the tooltip.
# As far as I can tell right now we will need to rework the theme
# quite a bit to get this working correctly.
# (It will involve setting different priorities, etc.)
################################
widget "gtk-tooltip*" style "size-tooltips"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment