# Author: perfectska04
# Theme:  Shiki-Colors for Ubuntu Hardy/Gnome 2.22 or equivalent.
# Description: Shiki-Colors is 100% free and built with the aid of Colombian coffee and delicious cake.
# This theme is heavily influenced by Ubuntu and Clearlooks artwork. Most if not all the credit goes to them.
# You will always have permission to modify, release and distribute this theme as you see fit.. so share it with grandma, include it in your distro, make it better!

# Note: Uncommenting means to delete the "#" at the beginning of a line. Commenting out means to add a "#" at the beginning of a line. The "#" tells the theme wether to ignore the line or not.

# These are the official colors of the theme, you can change them in GNOME's appearance preferences.
gtk_color_scheme = "fg_color:#101010\nbg_color:#D8D8D8\nbase_color:#fff\ntext_color:#1A1A1A\nselected_bg_color:#A7CC5C\nselected_fg_color:#fff\ntooltip_bg_color:#F5F5B5\ntooltip_fg_color:#000"

# This specifies the sizes of panel icons. 16 = smaller icons, 24 = default-sized icons.
gtk-icon-sizes = "panel-menu=24,24"

# gtk-icon-sizes = "gtk-button=16,16"  # This makes button icons smaller, which in turn makes buttons smaller.
# gtk-icon-sizes = "gtk-large-toolbar=24,24:gtk-small-toolbar=16,16"  # Uncomment or edit for smaller toolbars.
# gtk-button-images = 0  # Enables or disables icons on gtk-buttons (OSX-like).
# gtk-menu-popup-delay = 0  # Makes menus pop up faster!

include "panel.rc"  # This gives you gradient panel backgrounds. Comment out to get default gnome flat panels. Edit included panel.rc file for even more panel customization.

#include "panel28.rc"  # Use this instead if you plan to use 28px panels.
#include "panel32.rc"  # Use this instead if you plan to use 32px panels.
#include "panel40.rc"  # Use this instead if you plan to use 40px panels.
#include "panel48.rc"  # Use this instead if you plan to use 48px panels.

style "clearlooks-default"
{
	GtkButton      ::child-displacement-x = 0  # Pressed button icon displacement.
	GtkButton      ::child-displacement-y = 1  # Pressed button icon displacement.
	GtkButton      ::default-border       = { 0, 0, 0, 0 }
	GtkCheckButton ::indicator-size       = 15
	GtkRadioButton ::indicator-size       = 15
	GtkPaned       ::handle-size          = 6

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

	GtkScale       ::slider-length        = 24  # Length of sliders.
	GtkScale       ::trough-side-details  = 1
	GtkScrollbar   ::min-slider-length    = 30  # Min. length of scrollbars.

	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

#	GtkButton      ::focus-padding	      = 0  # This can give you a more compact appearance.
  	GtkScrolledWindow ::scrollbar-spacing  = 2  # This sets the spacing between scrollbars.
	GtkTreeView::odd_row_color = mix(0.98, shade (0.93,@base_color), @selected_bg_color)

#	Uncomment one or both of the following for flat/unified menus or toolbars:
	GtkToolbar     ::shadow-type       = GTK_SHADOW_NONE  # Makes toolbars flat and unified.
#	GtkMenuBar     ::shadow-type       = GTK_SHADOW_NONE  # Makes menus flat and unified.

	xthickness = 1
	ythickness = 1

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

	bg[NORMAL]        = @bg_color
	bg[PRELIGHT]      = shade (1.02, @bg_color)
	bg[SELECTED]	  = @selected_bg_color  # Color for selected items.
	bg[INSENSITIVE]   = @bg_color
	bg[ACTIVE]        = shade (0.85, @bg_color)

	base[NORMAL]      = @base_color
	base[PRELIGHT]    = shade (0.95, @bg_color)
	base[ACTIVE]      = shade (0.80, @bg_color)
	base[SELECTED]    = @selected_bg_color  # Color for selected base items.
	base[INSENSITIVE] = @bg_color

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

	engine "clearlooks" 
	{
#		colorize_scrollbar = TRUE  # Uncommenting this gives you colorful scrollbars.
		reliefstyle        = 1  # 0 makes buttons/widgets less raised.
		menubarstyle       = 2  # Gradient menubar, use tweak in line 52 for flat menubars.
		toolbarstyle	   = 0  # Set to 0 as a workaround.
		animation          = TRUE  # FALSE disables progressbar animations.
		style              = GUMMY  # Could also be GLOSSY, but the theme is designed for a GUMMY style.
		radius = 2.0 # Roundness.
		hint = "use-hints"  # Set a hint to disable backward compatibility fallbacks.
	}
}

style "evolution-hack" = "clearlooks-default"
{	
	bg[NORMAL]   = shade (1.14, @bg_color)  # Color for evo treeview headers.
	bg[PRELIGHT]   = shade (1.18, @bg_color)  # Color for evo treeview header prelight.
	bg[ACTIVE]	= shade (0.80, @bg_color)  # Color for unfocused evo selected items.
	bg[SELECTED]	= @selected_bg_color  # Color for evo selected items.
	fg[ACTIVE]      = @selected_fg_color
	fg[SELECTED]    = @selected_fg_color
}

style "clearlooks-wide"
{
	xthickness = 2  # Can't change, or clowns will eat you.
	ythickness = 2  # Can't change, or clowns will eat you.
}

style "clearlooks-wider"
{
	xthickness = 3  # Can't change, or clowns will eat you.
	ythickness = 3  # Can't change, or clowns will eat you.
}

style "clearlooks-button" = "clearlooks-wider"
{
	bg[NORMAL]   = shade (1.14, @bg_color)  # Color for buttons.
	bg[PRELIGHT] = shade (1.18, @bg_color)  # Color for button-prelight.
	bg[ACTIVE]   = shade (0.85, @bg_color)  # Color for pressed-buttons.
}

style "clearlooks-notebook-bg"
{
	bg[NORMAL] = shade (1.1, @bg_color)  # Tab background.
	bg[ACTIVE] = @bg_color  # Unfocused tab background.
}

style "clearlooks-notebook" = "clearlooks-notebook-bg"
{
	xthickness = 1  # Width of tabs and notebook borders.
	ythickness = 1  # Height of tabs and notebook borders.
	engine "clearlooks" 
	{
		radius = 0.0 # Roundness of notebook tabs
	}
}

style "clearlooks-tasklist" = "clearlooks-wide"
{
}

style "clearlooks-menu" = "clearlooks-wide" # This section deals with dark menus. Leave as is.
{
	bg[SELECTED] = "#525252"
	bg[NORMAL]   = "#3C3C3C"
	bg[PRELIGHT] = "#525252"
	bg[ACTIVE]   = "#333333"
	bg[INSENSITIVE] = "#3C3C3C"
	fg[NORMAL]   = "#D4D4D4"
	fg[PRELIGHT] = lighter (@selected_bg_color)
	fg[SELECTED] = lighter (@selected_bg_color)
	fg[ACTIVE]   = lighter (@selected_bg_color)
	fg[INSENSITIVE] = "#666666"
	text[NORMAL]   = @text_color
	text[PRELIGHT] = lighter (@selected_bg_color)
	text[SELECTED] = lighter (@selected_bg_color)
	text[ACTIVE]   = lighter (@selected_bg_color)
	text[INSENSITIVE] = "#666666"
}

style "clearlooks-menu-item" = "clearlooks-wider"
{
	bg[SELECTED] = "#525252"
	bg[PRELIGHT] = "#525252"
}

style "clearlooks-separator-menu-item"
{
	xthickness = 1
	ythickness = 2

#  Code for pixmap menu separators.
  engine "pixmap"
  {
    image
    {
      function	  = HLINE
      recolorable         = TRUE
      file	  = "Menu-Menubar/menu-line.png"
      border	  = { 1, 1, 1, 1 }
      stretch	  = TRUE
    }
}
}

style "clearlooks-treeview"
{
  engine "murrine" 
  {
	roundness = 0   # Roundness of treeviews
	lightborder_ratio   = 1.1   # sets lightborder amount for buttons or widgets
	lightborderstyle    = 1     # 0 = lightborder on top side, 1 = lightborder on all sides of scrollbars.
	style		    = NODOKA # engine style options: CANDIDO, CLEARLOOKS, MIST, MURRINE, NODOKA
	rgba		    = FALSE  # FALSE = disabled, TRUE = enabled
	gradients = TRUE
	contrast = 1.0
}
}

style "clearlooks-treeview-header" = "clearlooks-default"
{
	xthickness = 2
	ythickness = 1
	bg[NORMAL]   = shade (1.14, @bg_color)  # Color for treeview headers.
	bg[PRELIGHT]   = shade (1.18, @bg_color)  # Color for treeview header prelight.
	bg[ACTIVE]   = shade (0.85, @bg_color)  # Color for pressed-treeview.
	engine "clearlooks" {
		style = GUMMY
		hint = "treeview-header"
	}
}

style "clearlooks-frame-title"
{
	fg[NORMAL] = lighter (@fg_color)
}

style "clearlooks-tooltips" = "clearlooks-wider"
{
	bg[NORMAL] = @tooltip_bg_color
	fg[NORMAL] = @tooltip_fg_color
}

style "metacity-frame" = "clearlooks-default"
{
#  bg[SELECTED]  = @selected_bg_color  # Color for metacity borders.
}

style "clearlooks-progressbar" = "clearlooks-wide"
{
	fg[PRELIGHT] = @selected_fg_color  # Progressbar prelighted text.
  	bg[NORMAL]      = shade (0.90, @bg_color)

#This next section is for using Murrine-SVN progressbars.
  engine "murrine" 
  {
	lightborder_ratio   = 1.1   # sets lightborder amount for buttons or widgets
	lightborderstyle    = 1     # 0 = lightborder on top side, 1 = lightborder on all sides of scrollbars.
	style		    = CLEARLOOKS # engine style options: CANDIDO, CLEARLOOKS, MIST, MURRINE, NODOKA
	rgba		    = FALSE  # FALSE = disabled, TRUE = enabled
	gradients = TRUE
	animation = TRUE  # FALSE disables progressbar animations.
	contrast = 1.0
}
}

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

style "clearlooks-comboboxentry"
{
	engine "clearlooks"
	{
		hint	= "comboboxentry"
	}
}

style "clearlooks-spinbutton"
{
	bg[ACTIVE]   = shade (0.85, @bg_color)  # Color for pressed-spinbuttons.
	engine "clearlooks"
	{
		hint	= "spinbutton"
	}
}

style "clearlooks-scale"
{
	bg[NORMAL]   = shade (1.14, @bg_color)  # Color for sliders.
	bg[PRELIGHT]   = shade (1.18, @bg_color)  # Color for slider prelight.
	bg[ACTIVE]   = shade (0.85, @bg_color)  # Color for pressed-sliders.
	engine "clearlooks"
	{
		hint	= "scale"
	}
}

style "clearlooks-hscale" = "clearlooks-scale"
{
	engine "clearlooks"
	{
		hint	= "hscale"
	}
}

style "clearlooks-vscale" = "clearlooks-scale"
{
	engine "clearlooks"
	{
		hint	= "vscale"
	}
}

style "clearlooks-scrollbar"
{
	bg[NORMAL]   = shade (1.14, @bg_color)  # Color for non-colored scrollbars.
	bg[INSENSITIVE]   = shade (1.1, @bg_color)  # Color for non-colored scrollbars.
	bg[PRELIGHT]   = shade (1.18, @bg_color)  # Color for scrollbar prelight?
	bg[ACTIVE]   = shade (0.85, @bg_color)  # Color for pressed-scrollbars.
#	bg[SELECTED] = @selected_bg_color  # You can change the color of colorized scrollbars here.
	engine "clearlooks"
	{
		radius = 1.0  # Roundness of scrollbars.
		hint	= "scrollbar"
	}
}

style "clearlooks-hscrollbar" = "clearlooks-scrollbar"
{
	engine "clearlooks"
	{
		hint	= "hscrollbar"
	}
}

style "clearlooks-vscrollbar" = "clearlooks-scrollbar"
{
	engine "clearlooks"
	{
		hint	= "vscrollbar"
	}
}

#This section deals with dark menubars. Leave as is.
style "clearlooks-menubar"
{
	ythickness = 0
	bg[SELECTED] = "#525252"
	bg[NORMAL]   = "#3C3C3C"
	bg[PRELIGHT] = "#525252"
	bg[ACTIVE]   = "#333333"
	bg[INSENSITIVE] = "#3C3C3C"
	fg[NORMAL]   = "#D4D4D4"
	fg[PRELIGHT] = lighter (@selected_bg_color)
	fg[SELECTED] = lighter (@selected_bg_color)
	fg[ACTIVE]   = lighter (@selected_bg_color)
	fg[INSENSITIVE] = "#666666"
	text[NORMAL]   = @text_color
	text[PRELIGHT] = lighter (@selected_bg_color)
	text[SELECTED] = lighter (@selected_bg_color)
	text[ACTIVE]   = lighter (@selected_bg_color)
	text[INSENSITIVE] = "#666666"
	engine "clearlooks"
	{
		hint	= "menubar"
	}
}

style "clearlooks-nautilus-location"
{
	bg[NORMAL] = shade (1.25, @selected_bg_color)  # Workaround for nautilus' messages.
}

#Gradient toolbars are disabled. Comment line 60 and comment out the following for gradient toolbars:
#style "clearlooks-toolbar" = "clearlooks-default"
#{
#	bg[NORMAL]   = @bg_color  # Darkens gradient toolbars to match with unified metacity theme.
#	engine "clearlooks"
#	{
#		toolbarstyle = 1  # This forces gradient toolbars.
#	}
#}

#########################################
# Matches
#########################################

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

# Increase the x/ythickness in some widgets.
class "GtkToolbar"   style "clearlooks-default" 
class "GtkRange"     style "clearlooks-wide"
class "GtkFrame"     style "clearlooks-wide"
class "GtkEntry"     style "clearlooks-wider"
class "MetaFrames"   style "metacity-frame"
class "GtkSeparator" style "clearlooks-wide"
class "GtkWindow"      style "metacity-frame"

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 "GtkVScrollbar"  style "clearlooks-vscrollbar"
class "GtkHScrollbar"  style "clearlooks-hscrollbar"

# 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.

# 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 "*<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 "*<GtkProgressBar>"       style "clearlooks-progressbar"

# Treeview header
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"

# Workarounds for Evolution
widget_class "*.ETable.ECanvas"    style "clearlooks-treeview-header"
widget_class "*.ETree.ECanvas"    style "clearlooks-treeview-header"
widget_class "*GtkCTree*"	style "evolution-hack"
widget_class "*GtkList*"	style "evolution-hack"
widget_class "*GtkCList*"	style "evolution-hack"
widget_class "*.ETree.*"	style "evolution-hack"
widget_class "*EInfoLabel*"	style "evolution-hack"

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

###################################################
# Special cases and work arounds
###################################################

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

# Work around for http://bugzilla.gnome.org/show_bug.cgi?id=382646
# Note that the work around assumes that the combobox is _not_ in
# appears-as-list mode.
# Similar hack also in the menuitem style.
# This style does not affect GtkComboBoxEntry, it does have an effect
# on comboboxes in appears-as-list mode though.
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)
}
widget_class "*.<GtkComboBox>.<GtkCellView>"   style "clearlooks-text-is-fg-color-workaround"

style "clearlooks-menuitem-text-is-fg-color-workaround"
{
	text[NORMAL]        = "#D4D4D4"
	text[PRELIGHT]      = lighter (@selected_bg_color)
	text[SELECTED]      = lighter (@selected_bg_color)
	text[ACTIVE]        = @fg_color
	text[INSENSITIVE]   = darker (@bg_color)
}
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 set.
style "clearlooks-fg-is-text-color-workaround"
{
	fg[NORMAL]      = @text_color
	fg[PRELIGHT]    = @text_color
	fg[ACTIVE]      = @selected_fg_color
	fg[SELECTED]    = @selected_fg_color
	fg[INSENSITIVE] = darker (@bg_color)
}
widget_class "*<GtkListItem>*" style "clearlooks-fg-is-text-color-workaround"
# The same problem also exists for GtkCList and GtkCTree
# Only match GtkCList and not the parent widgets, because that would also change the headers.
widget_class "*<GtkCList>" style "clearlooks-fg-is-text-color-workaround"

# Work around the evolution "New" button bug by making the toolbar flat.
# http://bugzilla.gnome.org/show_bug.cgi?id=446953
# Maybe remove this workaround in unstable releases. (will be fixed in GNOME 2.24). Disabled if no gradient toolbars are used.
#style "clearlooks-evo-new-button-workaround"
#{
#	engine "clearlooks"
#	{
#		toolbarstyle = 0
#	}
#}
#widget_class "EShellWindow.GtkVBox.BonoboDock.BonoboDockBand.BonoboDockItem*" style "clearlooks-evo-new-button-workaround"

# My workarounds (Specific to this theme):
#class "GtkHandleBox" style "clearlooks-toolbar"  # Makes handleboxes match darkened toolbars.
widget_class "*.GtkNotebook.*.GtkViewport" style "clearlooks-notebook"  # Fixes some tab backgrounds.

# The answer to the ultimate question of life, the universe, and everything is 42.

# Rick Astley would never:
# Give you up.
# Let you down.
# Run around and desert you.
# Make you cry.
# Say goodbye.
# Tell a lie and hurt you.
