# Please keep this gtkrc in sync with the other ones from Clearlooks based themes.

gtk-color-scheme = "fg_color:#f5f5f5\nbg_color:#888a85\nbase_color:#babdb6\ntext_color:#000\nselected_bg_color:#f57900\nselected_fg_color:#fff\ntooltip_bg_color:#F5F5B5\ntooltip_fg_color:#000"

style "clearlooks-default" {
	xthickness = 1
	ythickness = 1

	#######################
	# Style Properties
	#######################
	GtkButton::child-displacement-x = 1
	GtkButton::child-displacement-y = 1
	GtkButton::default-border = { 0, 0, 0, 0 }

	GtkCheckButton::indicator-size = 14

	GtkPaned::handle-size = 6

	GtkRange::trough-border = 0
	GtkRange::slider-width = 15
	GtkRange::stepper-size = 15

	GtkScale::slider-length = 23
	GtkScale::trough-side-details = 1

	GtkScrollbar::min-slider-length = 30
	GtkMenuBar::internal-padding = 0
	GtkExpander::expander-size = 16
	GtkToolbar::internal-padding = 1
	GtkTreeView::expander-size = 14
	GtkTreeView::vertical-separator = 0

	GtkMenu::horizontal-padding = 0
	GtkMenu::vertical-padding = 0

	WnckTasklist::fade-overlay-rect = 0
	# The following line hints 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::progress-border = { 2, 2, 2, 2 }

	####################
	# Color Definitions
	####################
	bg[NORMAL]        = @bg_color
	bg[PRELIGHT]      = shade (1.02, @bg_color)
	bg[SELECTED]      = @selected_bg_color
	bg[INSENSITIVE]   = @bg_color
	bg[ACTIVE]        = shade (0.9, @bg_color)

	fg[NORMAL]        = @fg_color
	fg[PRELIGHT]      = @fg_color
	fg[SELECTED]      = @selected_fg_color
	fg[INSENSITIVE]   = darker (@bg_color)
	fg[ACTIVE]        = @fg_color

	text[NORMAL]      = @text_color
	text[PRELIGHT]    = @text_color
	text[SELECTED]    = @selected_fg_color
	text[INSENSITIVE] = darker (@bg_color)
	text[ACTIVE]      = @selected_fg_color

	base[NORMAL]      = @base_color
	base[PRELIGHT]    = shade (0.95, @bg_color)
	base[SELECTED]    = @selected_bg_color
	base[INSENSITIVE] = @bg_color
	base[ACTIVE]      = shade (0.9, @selected_bg_color)

	engine "clearlooks" {
		colorize_scrollbar = TRUE
		reliefstyle = 1
		menubarstyle = 2
		toolbarstyle = 1
		animation = FALSE
		radius = 3.0
		style = GUMMY

		# Set a hint to disable backward compatibility fallbacks.
		hint = "use-hints"
	}
}

style "clearlooks-wide" {
	xthickness = 2
	ythickness = 2
}

style "clearlooks-wider" {
	xthickness = 3
	ythickness = 3
}

style "clearlooks-entry" {
	xthickness = 3
	ythickness = 3

	bg[SELECTED] = mix (0.4, @selected_bg_color, @base_color)
	fg[SELECTED] = @text_color

	engine "clearlooks" {
		focus_color = shade (0.65, @selected_bg_color)
	}
}

style "clearlooks-spinbutton" {

	engine "clearlooks" {
		hint = "spinbutton"
	}
}

style "clearlooks-scale" {
	xthickness = 2
	ythickness = 2

	engine "clearlooks" {
		hint = "scale"
	}
}

style "clearlooks-vscale" {

	engine "clearlooks" {
		hint = "vscale"
	}
}

style "clearlooks-hscale" {

	engine "clearlooks" {
		hint = "hscale"
	}
}

style "clearlooks-scrollbar" {
	xthickness = 2
	ythickness = 2

	engine "clearlooks" {
		hint = "scrollbar"
	}
}

style "clearlooks-hscrollbar" {

	engine "clearlooks" {
		hint = "hscrollbar"
	}
}

style "clearlooks-vscrollbar" {

	engine "clearlooks" {
		hint = "vscrollbar"
	}
}

style "clearlooks-notebook_bg" {

	bg[NORMAL]        = shade (1.02, @bg_color)
}

style "clearlooks-button" {
	xthickness = 3
	ythickness = 3

	bg[NORMAL]        = shade (1.04, @bg_color)
	bg[PRELIGHT]      = shade (1.06, @bg_color)
	bg[ACTIVE]        = shade (0.85, @bg_color)
}

# The color is changed by the notebook_bg style, this style
# changes the x/ythickness
style "clearlooks-notebook" {
	xthickness = 3
	ythickness = 3
}

style "clearlooks-statusbar" {

	engine "clearlooks" {
		hint = "statusbar"
	}
}

style "clearlooks-comboboxentry" {

	engine "clearlooks" {
		# Note:
		# If you set the appears-as-list option on comboboxes in the theme,
		# then you should set this hint on the combobox instead.
		hint = "comboboxentry"
	}
}

style "clearlooks-menubar" {

	engine "clearlooks" {
		hint = "menubar"
	}
}

style "clearlooks-menu" {
	xthickness = 0
	ythickness = 0

	bg[NORMAL]        = shade (1.08, @bg_color)

	engine "clearlooks" {
		radius = 0.0
	}
}

style "clearlooks-menu_item" {
	xthickness = 2
	ythickness = 3

	fg[PRELIGHT]      = @selected_fg_color
}

# 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 (ie. no border at the left/right)
style "clearlooks-separator_menu_item" {
	xthickness = 1
	ythickness = 0

	GtkSeparatorMenuItem::horizontal-padding = 0
	GtkWidget::wide-separators = 1
	GtkWidget::separator-width = 1
	GtkWidget::separator-height = 7
}

style "clearlooks-frame_title" {

	fg[NORMAL]        = lighter (@fg_color)
}

style "clearlooks-treeview" {

	engine "clearlooks" {
		hint = "treeview"
	}
}

# The almost useless progress bar style
style "clearlooks-progressbar" {
	xthickness = 1
	ythickness = 1

	fg[PRELIGHT]      = @selected_fg_color

	engine "clearlooks" {
		# Explicitly set the radius for the progress bars inside menu items.
		radius = 3.0

		hint = "progressbar"
	}
}

# This style is based on the default style, so that the colors from the button
# style are overriden again.
style "clearlooks-treeview_header" = "default" {
	xthickness = 2
	ythickness = 1

	engine "clearlooks" {
		hint = "treeview-header"
	}
}

style "clearlooks-tooltips" {
	xthickness = 4
	ythickness = 4

	bg[NORMAL]        = @tooltip_bg_color
	fg[NORMAL]        = @tooltip_fg_color
}

style "clearlooks-caja_location" {

	bg[NORMAL]        = mix (0.60, shade (1.05, @bg_color), @selected_bg_color)
}

# Wrokaroudn style for places where the text color is used instead of the fg color.
style "clearlooks-text_is_fg_color_workaround" {

	text[NORMAL]      = @fg_color
	text[PRELIGHT]    = @fg_color
	text[SELECTED]    = @selected_fg_color
	text[ACTIVE]      = @fg_color
	text[INSENSITIVE] = darker (@bg_color)
}

# Workaround style for menus where the text color is used instead of the fg color.
style "clearlooks-menuitem_text_is_fg_color_workaround" {

	text[NORMAL]      = @fg_color
	text[PRELIGHT]    = @selected_fg_color
	text[SELECTED]    = @selected_fg_color
	text[ACTIVE]      = @fg_color
	text[INSENSITIVE] = darker (@bg_color)
}

# Workaround style for places where the fg color is used instead of the text color.
style "clearlooks-fg_is_text_color_workaround" {

	fg[NORMAL]        = @text_color
	fg[PRELIGHT]      = @text_color
	fg[SELECTED]      = @selected_fg_color
	fg[ACTIVE]        = @selected_fg_color
	fg[INSENSITIVE]   = darker (@bg_color)
}

# Style to set the toolbar to use a flat style. This is because the "New" button in
# Evolution is not drawn transparent. So if there is a gradient in the background it will
# look really wrong.
# See http://bugzilla.gnome.org/show_bug.cgi?id=446953.
style "clearlooks-evo_new_button_workaround" {

	engine "clearlooks" {
		toolbarstyle = 0
	}
}


###############################################################################
# The following part of the gtkrc applies the different styles to the widgets.
###############################################################################

# The default style is applied to every widget
class "GtkWidget" style "clearlooks-default"

class "GtkSeparator" style "clearlooks-wide"
class "GtkFrame" style "clearlooks-wide"
class "GtkCalendar" style "clearlooks-wide"
class "GtkEntry" style "clearlooks-entry"

class "GtkSpinButton" style "clearlooks-spinbutton"
class "GtkScale" style "clearlooks-scale"
class "GtkVScale" style "clearlooks-vscale"
class "GtkHScale" style "clearlooks-hscale"
class "GtkScrollbar" style "clearlooks-scrollbar"
class "GtkHScrollbar" style "clearlooks-hscrollbar"
class "GtkVScrollbar" style "clearlooks-vscrollbar"

# General matching follows. The order is choosen so that the right styles override
# each other. EG. progressbar needs to be more important than the menu match.
widget_class "*<GtkNotebook>" style "clearlooks-notebook_bg"
# This is not perfect, it could be done better.
# (That is modify *every* widget in the notebook, and change those back that
# we really don't want changed)
widget_class "*<GtkNotebook>*<GtkEventBox>" style "clearlooks-notebook_bg"
widget_class "*<GtkNotebook>*<GtkDrawingArea>" style "clearlooks-notebook_bg"
widget_class "*<GtkNotebook>*<GtkLayout>" style "clearlooks-notebook_bg"
widget_class "*<GtkNotebook>*<GtkViewport>" style "clearlooks-notebook_bg"
widget_class "*<GtkNotebook>*<GtkScrolledWindow>" style "clearlooks-notebook_bg"

widget_class "*<GtkButton>" style "clearlooks-button"
widget_class "*<GtkNotebook>" style "clearlooks-notebook"
widget_class "*<GtkStatusbar>*" style "clearlooks-statusbar"

widget_class "*<GtkComboBoxEntry>*" style "clearlooks-comboboxentry"
widget_class "*<GtkCombo>*" style "clearlooks-comboboxentry"

widget_class "*<GtkMenuBar>*" style "clearlooks-menubar"
widget_class "*<GtkMenu>*" style "clearlooks-menu"
widget_class "*<GtkMenuItem>*" style "clearlooks-menu_item"
widget_class "*<GtkSeparatorMenuItem>*" style "clearlooks-separator_menu_item"

widget_class "*.<GtkFrame>.<GtkLabel>" style "clearlooks-frame_title"
widget_class "*.<GtkTreeView>*" style "clearlooks-treeview"

widget_class "*<GtkProgress>" style "clearlooks-progressbar"

# Treeview headers (and similar stock GTK+ widgets)
widget_class "*.<GtkTreeView>.<GtkButton>" style "clearlooks-treeview_header"
widget_class "*.<GtkCTree>.<GtkButton>" style "clearlooks-treeview_header"
widget_class "*.<GtkList>.<GtkButton>" style "clearlooks-treeview_header"
widget_class "*.<GtkCList>.<GtkButton>" style "clearlooks-treeview_header"

# 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 "clearlooks-tooltips"

##########################################################################
# Following are special cases and workarounds for issues in applications.
##########################################################################

# Workaround for the evolution ETable (bug #527532)
widget_class "*.<ETable>.<ECanvas>" style "clearlooks-treeview_header"
# Workaround for the evolution ETree
widget_class "*.<ETree>.<ECanvas>" style "clearlooks-treeview_header"

# Special case the caja-extra-view-widget
# ToDo: A more generic approach for all applications that have a widget like this.
widget "*.caja-extra-view-widget" style : highest "clearlooks-caja_location"

# Work around for http://bugzilla.gnome.org/show_bug.cgi?id=382646
# Note that this work around assumes that the combobox is _not_ in appears-as-list mode.
widget_class "*.<GtkComboBox>.<GtkCellView>" style "clearlooks-text_is_fg_color_workaround"
# This is the part of the workaround that fixes the menus
widget "*.gtk-combobox-popup-menu.*" style "clearlooks-menuitem_text_is_fg_color_workaround"

# Work around 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 "*<GtkListItem>*" style "clearlooks-fg_is_text_color_workaround"
# GtkCList also uses the fg color to draw text on top of the base colors.
widget_class "*<GtkCList>" style "clearlooks-fg_is_text_color_workaround"
widget_class "*<GtkListItem>*" style "clearlooks-fg_is_text_color_workaround"
widget_class "*<GtkTreeItem>*" style "clearlooks-fg_is_text_color_workaround"
# Caja when renaming files, and maybe other places.
widget_class "*<EelEditableLabel>" style "clearlooks-fg_is_text_color_workaround"

# See the documentation of the style.
widget_class "EShellWindow.GtkVBox.MateComponentDock.MateComponentDockBand.MateComponentDockItem*" style "clearlooks-evo_new_button_workaround"


##################################################
# Marking deprecated widgets
##################################################

style "clearlooks-deprecated-widgets"
{
	bg[NORMAL]        = mix(0.9, @bg_color, "#ff0000")
	bg[PRELIGHT]      = mix(0.9, shade (1.02, @bg_color), "#ff0000")
	bg[SELECTED]      = mix(0.9, @selected_bg_color, "#ff0000")
	bg[INSENSITIVE]   = mix(0.9, @bg_color, "#ff0000")
	bg[ACTIVE]        = mix(0.9, shade (0.9, @bg_color), "#ff0000")

	fg[NORMAL]        = mix(0.9, @fg_color, "#ff0000")
	fg[PRELIGHT]      = mix(0.9, @fg_color, "#ff0000")
	fg[SELECTED]      = mix(0.9, @selected_fg_color, "#ff0000")
	fg[INSENSITIVE]   = mix(0.9, darker (@bg_color), "#ff0000")
	fg[ACTIVE]        = mix(0.9, @fg_color, "#ff0000")

	text[NORMAL]      = mix(0.9, @text_color, "#ff0000")
	text[PRELIGHT]    = mix(0.9, @text_color, "#ff0000")
	text[SELECTED]    = mix(0.9, @selected_fg_color, "#ff0000")
	text[INSENSITIVE] = mix(0.9, darker (@bg_color), "#ff0000")
	text[ACTIVE]      = mix(0.9, @selected_fg_color, "#ff0000")

	base[NORMAL]      = mix(0.9, @base_color, "#ff0000")
	base[PRELIGHT]    = mix(0.9, shade (0.95, @bg_color), "#ff0000")
	base[SELECTED]    = mix(0.9, @selected_bg_color, "#ff0000")
	base[INSENSITIVE] = mix(0.9, @bg_color, "#ff0000")
	base[ACTIVE]      = mix(0.9, shade (0.9, @selected_bg_color), "#ff0000")
}

# GTK+
widget_class "*.<GtkCombo>*"          style "clearlooks-deprecated-widgets"
widget_class "*.<GtkOptionMenu>*"     style "clearlooks-deprecated-widgets"
widget_class "*.<GtkList>*"           style "clearlooks-deprecated-widgets"
widget_class "*.<GtkTree>*"           style "clearlooks-deprecated-widgets"
widget_class "*.<GtkCList>*"          style "clearlooks-deprecated-widgets"
widget_class "*.<GtkCTree>*"          style "clearlooks-deprecated-widgets"
widget_class "*.<GtkFileSelection>*"  style "clearlooks-deprecated-widgets"
widget_class "*.<GtkOldEditable>*"    style "clearlooks-deprecated-widgets"
widget_class "*.GtkProgress"          style "clearlooks-deprecated-widgets"
widget_class "*.<GtkText>*"           style "clearlooks-deprecated-widgets"

# libmateui
widget_class "*.<MateColorPicker>*"      style "clearlooks-deprecated-widgets"
widget_class "*.<MateDialog>*"           style "clearlooks-deprecated-widgets"
# MateEntry is already in because of GtkCombo
widget_class "*.<MateFileEntry>*"        style "clearlooks-deprecated-widgets"
widget_class "*.<MateIconEntry>*"        style "clearlooks-deprecated-widgets"
widget_class "*.<MateIconSelection>*"    style "clearlooks-deprecated-widgets"

widget_class "*.<MateFontPicker>*"       style "clearlooks-deprecated-widgets"
widget_class "*.<MateIconList>*"         style "clearlooks-deprecated-widgets"
widget_class "*.<MateIconTextItem>*"     style "clearlooks-deprecated-widgets"
widget_class "*.<MateScores>*"           style "clearlooks-deprecated-widgets"
widget_class "*.<MateDruid>*"            style "clearlooks-deprecated-widgets"
widget_class "*.<MateHRef>*"             style "clearlooks-deprecated-widgets"


# MATE Canvas -- well, is there a replacement?
#widget_class "*.<MateCanvas>*"    style "clearlooks-deprecated-widgets"

# All widgets that are embedded with MateComponent ... this makes a lot of things red
# like evolution and mate-panel
#widget_class "*<MateComponentWidget>*"    style "clearlooks-deprecated-widgets"
#widget_class "*<MateComponentWindow>*"    style "clearlooks-deprecated-widgets"
#widget_class "*<MateComponentSelector>*"  style "clearlooks-deprecated-widgets"

style "clearlooks-deprecated-fg_is_text_color_workaround"
{
	fg[NORMAL]      = mix(0.9, @text_color, "#ff0000")
	fg[PRELIGHT]    = mix(0.9, @text_color, "#ff0000")
	fg[SELECTED]    = mix(0.9, @selected_fg_color, "#ff0000")
	fg[INSENSITIVE] = mix(0.9, darker (@bg_color), "#ff0000")
	fg[ACTIVE]      = mix(0.9, @selected_fg_color, "#ff0000")
}

widget_class "*<GtkListItem>*" style "clearlooks-deprecated-fg_is_text_color_workaround"
widget_class "*<GtkCList>" style "clearlooks-deprecated-fg_is_text_color_workaround"
widget_class "*<GtkListItem>*" style "clearlooks-deprecated-fg_is_text_color_workaround"
widget_class "*<GtkTreeItem>*" style "clearlooks-deprecated-fg_is_text_color_workaround"