# GIMP GTK+ 2 Mac integration theme
# Author: scl
#
# Based upon:
# Zukitwo by lassekongo83
# Gnome-Cupertino by Rafa Cobreros
#
# Requirements:
# Murrine Theme Engine
# For a documentation of the Murrine properties see
# https://wiki.ubuntu.com/Artwork/Documentation/Murrine
#
# For explanations of the theme properties see:
# - the GTK+ 2 Settings Reference Manual
# https://developer.gnome.org/gtk2/2.24/GtkSettings.html
# - the API documentation of the GTK widgets and
# - the Murrine Engine documentation:
# https://wiki.ubuntu.com/Artwork/Documentation/Murrine
#
# This theme is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
#
# See the file COPYING for the full license text.
#
# Global settings #
## Color definitions ##
# Background, base:
gtk_color_scheme = "bg_color:#e8e8e8\nselected_bg_color:#6699cc\nbase_color:#f7f7f7"
# Foreground, text:
gtk_color_scheme = "fg_color:#2c2c2c\nselected_fg_color:#f5f5f5\ntext_color:#2c2c2c"
# Tooltips:
gtk_color_scheme = "tooltip_bg_color:#f5f5b5\ntooltip_fg_color:#000000"
# Hyperlinks:
gtk_color_scheme = "link_color:#08c"
# Dark colors:
gtk_color_scheme = "bg_color_dark:#3f3f3f\ntext_color_dark:#ffffff"
# Filechooser sidebar background:
gtk-color-scheme = "sidebar_background:#e1e5eb"
## Miscellanous definitions ##
gtk-auto-mnemonics = 1 # disables ugly lines under menu items
gtk-button-images = 0 # enables icons in buttons
gtk-icon-sizes = "gtk-button=16,16" # reduce button icon size
gtk-toolbar-style = 0 # disables text in toolbar
# Styles #
## Basic styles ##
style "default"
{
### Color Definitions ###
base[ACTIVE] = shade (0.92, @selected_bg_color)
base[INSENSITIVE] = @bg_color
base[NORMAL] = @base_color
base[PRELIGHT] = shade (0.95, @bg_color)
base[SELECTED] = shade (0.93, @selected_bg_color)
bg[ACTIVE] = shade (1.04, @bg_color)
bg[INSENSITIVE] = @bg_color
bg[NORMAL] = @bg_color
bg[PRELIGHT] = shade (1.02, @bg_color)
bg[SELECTED] = @selected_bg_color
fg[ACTIVE] = @fg_color
fg[INSENSITIVE] = darker (@bg_color)
fg[NORMAL] = @fg_color
fg[PRELIGHT] = @fg_color
fg[SELECTED] = @selected_fg_color
text[ACTIVE] = @selected_fg_color
text[INSENSITIVE] = darker (@bg_color)
text[NORMAL] = @text_color
text[PRELIGHT] = @text_color
text[SELECTED] = @selected_fg_color
xthickness = 1
ythickness = 1
GnomeHRef::link_color = @link_color
GtkHTML::link-color = @link_color
GtkIMHtmlr::hyperlink-color = @link_color
GtkIMHtml::hyperlink-color = @link_color
GtkWidget::link-color = @link_color
GtkWidget::visited-link-color = @text_color
GtkButton::child-displacement-x = 1
GtkButton::child-displacement-y = 1
GtkButton::default-border = {0, 0, 0, 0}
GtkCheckButton::indicator-size = 15
GtkWidget::new-tooltip-style = 1
GtkWidget::focus-line-width = 1
# 0 = prevent the Firefox tabs from jumping a few pixels when creating a new
# tab. Set the value locally if needed.
GtkWidget::focus-padding = 0
GtkImage::x-ayatana-indicator-dynamic = 1
GtkScrollbar::activate-slider = 0
GtkScrollbar::has-backward-stepper = 0
GtkScrollbar::has-forward-stepper = 1
GtkScrollbar::min-slider-length = 30
GtkScrollbar::slider-width = 9
GtkScrollbar::stepper-size = 1
GtkScrollbar::trough-border = 3
GtkScrollbar::trough-side-details = 0
GtkScrolledWindow::scrollbar-spacing = 0
GtkScrolledWindow::scrollbars-within-bevel = 1
GtkPaned::handle-size = 6
GtkRange::slider-width = 11
GtkRange::stepper-size = 0
GtkRange::stepper_spacing = 0
GtkRange::trough-border = 0
GtkRange::trough-under-steppers = 0
GtkScale::slider-length = 14
GtkScale::slider-width = 14
GtkMenuBar::internal-padding = 0
GtkExpander::expander-size = 16
GtkToolbar::internal-padding = 0
GtkTreeView::expander-size = 6
GtkTreeView::indent-expanders = 1
GtkTreeView::vertical-separator = 1
GtkNotebook::tab-curvature = 1 # 1 = default
GtkNotebook::tab-overlap = 2 # 2 = default
GtkMenu::horizontal-padding = 0
GtkMenu::vertical-padding = 0
WnckTasklist::fade-overlay-rect = 0
# 1 = hint to Gecko (and possibly other appliations) that the entry should be
# drawn transparently on the canvas. Without this, Gecko will fill in the
# background of the entry.
GtkEntry::honors-transparent-bg-hint = 1
GtkEntry::state-hint = 0
GtkEntry::progress-border = {2, 2, 2, 2}
GtkProgressBar::min-horizontal-bar-height = 16
GtkProgressBar::min-vertical-bar-width = 16
GtkMenuBar::window-dragging = 1
GtkToolbar::window-dragging = 1
# remove little ugly gripper at the bottom right
GtkWindow::resize-grip-height = 0
GtkWindow::resize-grip-width = 0
# Murrine engine properties
engine "murrine"
{
animation = FALSE
arrowstyle = 1 # 1 = filled arrows
border_shades = {1.0, 0.7} # gradient to draw on border
colorize_scrollbar = TRUE
comboboxstyle = 0 # 0 = normal combobox
contrast = 0.4 # 0.4 for less contrast on borders
default_button_color = "#4c8ed4"
expanderstyle = 0
focus_color = @selected_bg_color
focusstyle = 3
glazestyle = 1 # 1 = curved highlight
glow_shade = 1.1
glowstyle = 1 # 1 = bottom
gradient_shades = {1.31, 1.0, 1.0, 1.2} # gradients on the widgets
highlight_shade = 1.0 # highlight amount for buttons or widgets
lightborder_shade = 1.1 # lightborder amount for buttons or widgets
lightborderstyle = 0 # 0 = lightborder on top side
listviewheaderstyle = 1 # 1 = glassy
listviewstyle = 1 # 1 = dotted
menubaritemstyle = 0 # 0 = menuitem look
menubarstyle = 2 # 2 = gradient
menuitemstyle = 0 # 0 = flat
menustyle = 0 # 0 = no vertical menu stripe
# shade level for scrollbar's slider, comboboxstyle(1), and prelight state
# with gradient_colors:
prelight_shade = 0.95
progressbarstyle = 0 # 0 = nothing
reliefstyle = 2 # 2 = shadow
rgba = FALSE # FALSE = disabled
roundness = 3 # 0 = squared, greater values increase roundness
scrollbarstyle = 0 # 0 = nothing
separatorstyle = 1 # 1 = smooth separators
shadow_shades = {0.5, 0.0} # gradient for shadows
sliderstyle = 0 # 0 = nothing added
stepperstyle = 1 # 1 = integrated stepper handles
textstyle = 0 # 0 = normal text,1=inset and very resource heavy!
toolbarstyle = 2 # 2 = gradient
# draw gradient on trough of GtkScrollbar and GtkProgressbar:
trough_shades = {0.95, 1.05}
}
}
style "thin" = "default"
{
xthickness = 0
ythickness = 0
}
style "wide" = "default"
{
xthickness = 2
ythickness = 2
}
style "wider" = "default"
{
xthickness = 3
ythickness = 3
}
style "widest" = "default"
{
xthickness = 4
ythickness = 4
}
## Widget styles ##
style "button" = "wider"
{
bg[ACTIVE] = shade (0.85, @bg_color)
bg[INSENSITIVE] = shade (0.95, @bg_color)
bg[NORMAL] = shade (1.06, @bg_color)
bg[PRELIGHT] = shade (1.2, @bg_color)
bg[SELECTED] = shade (1.0, @selected_bg_color)
engine "murrine"
{
contrast = 0.8
lightborder_shade = 1.9
roundness = 3
}
}
style "comboboxentry"
{
engine "murrine"
{
contrast = 0.4
}
}
style "entry"
{
# text input box
base[ACTIVE] = "#b5d5ff" # background of active text
base[INSENSITIVE] = shade(0.85, @base_color) # background text-box disabled
base[NORMAL] = @base_color # background text-box
base[SELECTED] = "#b5d5ff" # background of selected text
bg[INSENSITIVE] = shade(0.85, @base_color) # background spinbutton disabled
# (probably a bug)
bg[NORMAL] = @bg_color # base color of edges
text[ACTIVE] = @text_color
text[SELECTED] = @text_color
xthickness = 3
ythickness = 3
engine "murrine"
{
border_shades = {1.2, 0.90}
contrast = 0.7
focus_color = shade(0.75, mix(0.95, "#83aadc", @bg_color))
roundness = 2
}
}
style "filechooser-sidepane-treeview" = "treeview"
{
base[NORMAL] = @sidebar_background # background
bg[NORMAL] = shade (0.91, @base_color)
bg[PRELIGHT] = @fg_color
GtkTreeView::allow-rules = 0 # disable alternating row colors
GtkTreeView::even_row_color = @sidebar_background
engine "murrine"
{
contrast = 0.80
}
}
style "frame-title"
{
fg[NORMAL] = lighter (@fg_color)
}
style "menu"
{
bg[NORMAL] = @base_color
xthickness = 0
ythickness = 0
engine "murrine"
{
border_shades = {1.2, 1.0}
roundness = 0 # roundness of menu items
textstyle = 0
}
}
style "menu-item" = "wider"
{
bg[SELECTED] = shade (0.95, @selected_bg_color)
bg[PRELIGHT] = shade (0.95, @selected_bg_color)
fg[PRELIGHT] = @selected_fg_color
xthickness = 2
ythickness = 3
engine "murrine"
{
border_shades = {1.2, 1.0}
roundness = 0
textstyle = 0
}
}
# This style is there to modify the separator menu items. The goals are:
# 1. Get a specific height.
# 2. The line should go to the edges (i.e. no border at the left/right)
style "menu-separator-item"
{
bg[NORMAL] = @base_color # Remove for visible separators
xthickness = 1
ythickness = 0
GtkSeparatorMenuItem::horizontal-padding = 0
GtkWidget::separator-height = 7
GtkWidget::separator-width = 1
GtkWidget::wide-separators = 1
engine "murrine"
{
contrast = 0.0 # set the contrast to 0.6 for visible separators.
separatorstyle = 0
}
}
style "menubar" = "default"
{
bg[NORMAL] = @bg_color
fg[NORMAL] = @fg_color
fg[PRELIGHT] = @fg_color
fg[SELECTED] = @fg_color
}
style "menubar-menuitem" = "wider"
{
bg[PRELIGHT] = @selected_bg_color
bg[SELECTED] = @bg_color
engine "murrine"
{
border_shades = {1.0, 0.8}
contrast = 0.0
gradient_shades = {1.0, 1.0, 0.85, 0.85}
roundness = 0
}
}
style "notebook"
{
bg[ACTIVE] = shade (1.04, @bg_color) # unselected tab
bg[NORMAL] = shade (0.96, @bg_color) # selected tab entire
xthickness = 2
ythickness = 2
engine "murrine"
{
contrast = 0.75
focus_color = shade (0.96, @bg_color)
focusstyle = 2
gradient_shades = {1.18, 0.96, 0.92, 0.92}
roundness = 3
}
}
# performance fix if murrine textstyle is on by default in the theme.
style "performance-fix"
{
engine "murrine"
{
textstyle = 0
}
}
style "progressbar"
{
bg[SELECTED] = @selected_bg_color
xthickness = 0
ythickness = 0
engine "murrine"
{
gradient_shades = {1.17, 1.00, 1.01, 1.12}
roundness = 2
}
}
style "radiocheck" = "wider"
{
bg[ACTIVE] = shade (0.85, @bg_color)
bg[INSENSITIVE] = shade (0.95, @bg_color)
bg[NORMAL] = shade (1.06, @bg_color)
bg[PRELIGHT] = shade (1.06, @bg_color)
bg[SELECTED] = @selected_bg_color
engine "murrine"
{
contrast = 0.8
lightborder_shade = 1.9
}
}
style "radiocheck-menu"
{
fg[PRELIGHT] = @selected_fg_color
text[PRELIGHT] = @selected_fg_color
}
style "scale" = "wider"
{
bg[ACTIVE] = shade (0.85, @bg_color)
bg[INSENSITIVE] = shade (0.95, @bg_color)
bg[NORMAL] = shade (1.06, @bg_color)
bg[PRELIGHT] = shade (1.2, @bg_color)
bg[SELECTED] = @selected_bg_color
engine "murrine"
{
border_shades = {1.0, 1.0}
contrast = 0.8
roundness = 7
trough_shades = {1.06, 1.16}
}
}
style "scrollbar"
{
bg[ACTIVE] = shade (0.96, @base_color)
bg[SELECTED] = shade (0.74, @base_color)
# steppers' color
fg[ACTIVE] = @base_color
fg[INSENSITIVE] = @base_color
fg[NORMAL] = @base_color
fg[PRELIGHT] = @base_color
fg[SELECTED] = @base_color
engine "murrine"
{
border_shades = {0.935, 1.00}
contrast = 0.00
glow_shade = 1.0
gradient_colors = FALSE
gradient_shades = {1.0, 1.0, 1.0, 1.0}
highlight_shade = 1.0
lightborder_shade = 1.0
lightborderstyle = 0
prelight_shade = 0.75
roundness = 8
trough_shades = {0.935, 1.00}
}
}
style "spinbutton"
{
bg[NORMAL] = @base_color
engine "murrine"
{
border_shades = {1.0, 0.7}
contrast = 0.70
gradient_shades = {1.01, 1.00, 1.00, 0.93}
lightborder_shade = 1.00
lightborderstyle = 1
}
}
style "statusbar"
{
font_name = "10"
xthickness = 2
}
style "toolbar" = "thin"
{
bg[NORMAL] = @bg_color
}
style "tooltips" = "wider"
{
bg[NORMAL] = @tooltip_bg_color
fg[NORMAL] = @tooltip_fg_color
engine "murrine"
{
textstyle = 0
}
}
style "treeview"
{
bg[SELECTED] = @selected_bg_color # background mini-checkbox checked
fg[NORMAL] = @fg_color # header text color
text[ACTIVE] = @selected_fg_color # text+indicator selected unfocused
text[NORMAL] = shade (1.05, @fg_color) # text+indicator checked normal
text[SELECTED] = @selected_fg_color # text+indicator selected focused
# enable alternating row colors for the file chooser's middle pane:
GtkTreeView::allow-rules = 1
GtkTreeView::odd_row_color = mix (0.05, @selected_bg_color, @base_color)
GtkTreeView::even_row_color = @base_color
engine "murrine"
{
gradient_shades = {1.00, 1.05, 1.05, 1.10}
roundness = 2
separatorstyle = 0
}
}
style "treeview-header"
{
bg[ACTIVE] = "#80b8ea"
bg[INSENSITIVE] = "#ffffff"
bg[NORMAL] = shade (0.95, "#ffffff")
bg[PRELIGHT] = shade (1.05, "#80b8ea")
bg[SELECTED] = shade (0.95, "#80b8ea")
ythickness = 1
GtkWidget::focus-padding = 0
engine "murrine"
{
border_shades = {1.2, 1.05}
contrast = 1.22
gradient_shades = {1.20, 1.02, 0.99, 1.15}
lightborderstyle = 1
textstyle = 1
}
}
# workaround style for widgets that use the text color instead of the fg color:
style "workaround-for-text-is-fg-color"
{
text[ACTIVE] = @fg_color
text[INSENSITIVE] = darker (@bg_color)
text[NORMAL] = @fg_color
text[PRELIGHT] = @fg_color
text[SELECTED] = @selected_fg_color
}
# workaround style for menus that use the text color instead of the fg color:
style "workaround-for-menuitem-text-is-fg-color"
{
text[ACTIVE] = @fg_color
text[INSENSITIVE] = darker (@bg_color)
text[NORMAL] = @fg_color
text[PRELIGHT] = @selected_fg_color
text[SELECTED] = @selected_fg_color
}
# workaround style for widgets that use the fg color instead of the text color:
style "workaround-for-fg-is-text-color"
{
fg[ACTIVE] = @selected_fg_color
fg[INSENSITIVE] = darker (@bg_color)
fg[NORMAL] = @text_color
fg[PRELIGHT] = @text_color
fg[SELECTED] = @selected_fg_color
}
# Assign styles to the widgets #
# Apply default style to every widget:
class "GtkWidget" style "default"
# Increase the x/ythickness (= space) in some widgets.
class "GtkFrame" style "wide"
class "GtkEntry" style "entry"
class "GtkSeparator" style "wide"
class "GtkCalendar" style "wide"
class "GtkInfoBar" style "default"
class "GtkIconView" style "default"
class "GtkSpinButton" style "spinbutton"
widget_class "*.*." style "entry"
class "GtkScale" style "scale"
class "GtkVScale" style "scale"
class "GtkHScale" style "scale"
class "GtkScrollbar" style "scrollbar"
class "GtkVScrollbar" style "scrollbar"
class "GtkHScrollbar" style "scrollbar"
# General matching following, later matching styles override earlier matches.
widget_class "*" style "notebook"
widget_class "*" style "button"
widget_class "**" style "statusbar"
widget_class "**" style "comboboxentry"
widget_class "**" style "comboboxentry"
widget_class "**" style "menubar"
widget_class "**" style "menu"
widget_class "**" style "menu-item"
widget_class "**" style "menu-separator-item"
widget_class "***" style "menubar-menuitem"
widget_class "***" style "menu-separator-item"
widget_class "*.." style "frame-title"
widget_class "*.*" style "treeview"
widget_class
"*GtkFileChooserWidget.GtkFileChooserDefault.GtkVBox.GtkHPaned.GtkVBox.GtkScrolledWindow.GtkTreeView*"
style "filechooser-sidepane-treeview"
widget_class "*" style "progressbar"
widget_class "*" style "progressbar"
widget_class "**" style "radiocheck"
widget_class "**" style "radiocheck"
class "GtkCheckMenuItem" style:highest "radiocheck-menu"
class "GtkRadioMenuItem" style:highest "radiocheck-menu"
# Treeview header
widget_class "*.." style "treeview-header"
widget_class "*.." style "treeview-header"
widget_class "*.." style "treeview-header"
widget_class "*.." style "treeview-header"
# FIXME: This will not work if one embeds eg. a button into the tooltip.
widget "gtk-tooltip*" style "tooltips"
# Special cases and workarounds: #
# workaround for http://bugzilla.gnome.org/show_bug.cgi?id=382646
# Note that this workaround assumes that the combobox is _NOT_ in
# appears-as-list mode.
widget_class "*.."
style "workaround-for-text-is-fg-color"
# This is the part of the workaround that fixes the menus
widget "*.gtk-combobox-popup-menu.*"
style "workaround-for-menuitem-text-is-fg-color"
# workaround the usage of GtkLabel inside GtkListItems to display text.
# This breaks because the label is shown on a background that is based on
# the base color.
widget_class "**" style "workaround-for-fg-is-text-color"
# GtkCList also uses the fg color to draw text on top of the base colors.
widget_class "*" style "workaround-for-fg-is-text-color"
# Draw arrows dark on dark toolbars.
widget_class "*GtkToolbar*GtkArrow*" style "default"
# Various performance fixes if murrine textstyle is on by default in the theme.
widget_class "*GimpDisplayShell*" style "performance-fix"
widget_class "*GimpToolbox*" style "performance-fix"
widget_class "*GimpMenuDock*" style "performance-fix"