Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
labwc-theme(5)		      File Formats Manual		labwc-theme(5)

NAME
       labwc - theme files

THEME
       The  theme engine aims to be compatible with openbox and	themes will be
       searched	for in the following order:

          ${XDG_DATA_HOME:-$HOME/.local/share}/themes/<theme-name>/labwc/
          $HOME/.themes/<theme-name>/labwc/
          /usr/share/themes/<theme-name>/labwc/
          /usr/local/share/themes/<theme-name>/labwc/
          /opt/share/themes/<theme-name>/labwc/
          ${XDG_DATA_HOME:-$HOME/.local/share}/themes/<theme-name>/openbox-3/
          $HOME/.themes/<theme-name>/openbox-3/
          /usr/share/themes/<theme-name>/openbox-3/
          /usr/local/share/themes/<theme-name>/openbox-3/
          /opt/share/themes/<theme-name>/openbox-3/

       When $XDG_DATA_HOME is defined,	it  replaces  (rather  than  augments)
       $HOME/.local/share.  The	 same  is  the	case  for  $XDG_DATA_DIRS  and
       /usr/share/.

       Choosing	a theme	is done	by editing the <name> key in the <theme>  sec-
       tion of the rc.xml configuration	file (labwc-config(5)).

       A  theme	 consists of a themerc file and	optionally some	titlebar icons
       (referred to as buttons).

       Theme settings specified	in themerc can be  overridden  by  creating  a
       'themerc-override'  file	 in the	configuration directory, which is nor-
       mally $HOME/.config/labwc/ but can be a	few  other  locations  as  de-
       scribed in labwc-config(5).

DATA TYPES
       color
	   Colors can be specified by name or hexadecimal Red-Green-Blue (RGB)
	   value:

	   color  name	refers	to  "X11  color	 name",	 for example: 'white',
	   'grey40', 'pink' and	'peach puff'. More information	can  be	 found
	   here:
	      http://en.wikipedia.org/wiki/Web_colors#X11_color_names
	      http://en.wikipedia.org/wiki/X11_color_names
	      https://github.com/labwc/labwc/blob/master/src/common/rgb.txt

	   RGB value

	      #rrggbb (hexadecimal RGB	values)
	      #rrggbb aaa (same but with decimal alpha	value percentage)
	      #rrggbbaa (same but with	inline alpha value in hex encoding)
	      #rgb  (hexadecimal  RGB	values	where  #fff  is	 shorthand for
	       #f0f0f0)	(since 0.9.0)

	   Note: the #rrggbb aaa notation is deprecated	 starting  from	 labwc
	   0.7.2 and may be removed in future releases.

       justification
	   Justification  determines  the  horizontal alignment	of text. Valid
	   options are Left, Center and	Right.

       textures
	   Textures determine the visual look of an element. They  are	speci-
	   fied	 through a text	string with a number of	fields.	Capitalization
	   is not significant. The format is as	follows:

	   (Solid | Gradient <type>)

	   .. where | stands for "or".

	      Solid means that	the background of the texture is filled	with a
	       single color. The texture must be accompanied by	a single color
	       field. For example:

	   window.*.title.bg: Solid
	   window.*.title.bg.color: #f8f5f2

	      Gradient	means that the background of  the  texture  is	filled
	       with  a	gradient  from	one color to another. When Gradient is
	       specified, it must be followed by the gradient's	type. It  must
	       also be accompanied by the fields color and colorTo. Valid gra-
	       dient  types are: (1) Vertical where the	gradient goes from the
	       top edge	to the bottom (2) SplitVertical	where the gradient  is
	       split  in  the  middle  and  goes out toward the	top and	bottom
	       edges. SplitVertical gradients have two extra,  optional	 color
	       fields: color.splitTo and colorTo.splitTo. These	colors are the
	       light  colors used on the far top and bottom of the SplitVerti-
	       cal gradient. When these	are omitted, the  default  values  for
	       these are color x 5/4 and colorTo x 17/16. Examples:

	   # Vertical gradient
	   window.*.title.bg: Gradient Vertical
	   window.*.title.bg.color: #658fb5
	   window.*.title.bg.colorTo: #4d6982

	   # SplitVertical gradient
	   window.*.title.bg: Gradient SplitVertical
	   window.*.title.bg.color: #658fb5
	   window.*.title.bg.color.splitTo: #7595b9
	   window.*.title.bg.colorTo: #4d6982
	   window.*.title.bg.colorTo.splitTo: #557485

THEME ELEMENTS
       border.width
	   Line	 width (integer) of border drawn around	window frames. Default
	   is 1.

       window.titlebar.padding.width
	   Horizontal titlebar padding size, in	 pixels,  between  border  and
	   first button	on the left/right. Default is 0.

       window.titlebar.padding.height
	   Vertical titlebar padding size, in pixels. Default is 0.

       window.active.border.color
	   Border color	of active window. Default is #aaaaaa.

       window.inactive.border.color
	   Border color	of inactive window. Default is #aaaaaa.

       window.active.indicator.toggled-keybind.color
	   Status  indicator  for the ToggleKeybinds action. Can be set	to the
	   same	value as set for  window.active.border.color  to  disable  the
	   status indicator. Default is	#ff0000.

       window.active.title.bg
	   Texture  for	 the  focused  window's	 titlebar. See texture section
	   above. Default is Solid

       window.active.title.bg.color
	   Background color for	the focused  window's  titlebar.  See  texture
	   section  for	additional color fields	associated with	gradients. De-
	   fault is #e1dedb.

       window.inactive.title.bg
	   Texture for non-focused windows'  titlebars.	 See  texture  section
	   above. Default is Solid

       window.inactive.title.bg.color
	   Background  color  for  non-focused windows'	titlebars. See texture
	   section for additional color	fields associated with gradients.  De-
	   fault is #f6f5f4.

       window.active.label.text.color
	   Text	color for the focused window's titlebar. Default is #000000.

       window.inactive.label.text.color
	   Text	color non-focused windows' titlebars. Default is #000000.

       window.label.text.justify
	   Specifies  how  window  titles are aligned in the titlebar for both
	   focused and unfocused windows. Type justification. Default is  Cen-
	   ter.

       window.button.width
	   Width of a titlebar button, in pixels. Default is 26.

       window.button.height
	   Height of a titlebar	button,	in pixels. Default is 26.

       window.button.spacing
	   Space between titlebar buttons, in pixels. Default is 0.

       Note: The window.button.hover namespace (below) relates to button hover
       overlay effects which work with all buttons including svg, png and xbm.

       The  window.button.hover	 effects  are only shown if there is no	corre-
       sponding	hover icon, like close_hover-active.svg.

       Openbox only supports hover effects rendered behind buttons which makes
       sense for the xbm format, but not for others. For reference, these  are
       defined	by  window.active|inactive.button.STATE.bg  where STATE	can be
       any of pressed, hover and disabled. These are not  (yet)	 supported  by
       labwc and are mentioned here for	comparison only.

       window.button.hover.bg.color
	   Color  of  the  hover  effect  of  a	 titlebar  button.  Default is
	   #80808020.

       window.button.hover.bg.corner-radius
	   Radius of the hover effect of a titlebar button, in pixels. Default
	   is 0.

	   Note: for a circular	hover effect, set window.button.width and win-
	   dow.button.height  equal  and  window.button.hover.bg.corner-radius
	   half	of them.

       window.active.button.unpressed.image.color
	   Color  of  the  images  in  titlebar	 buttons in their default, un-
	   pressed, state. This	element	is for the focused window. Default  is
	   #000000.

       window.inactive.button.unpressed.image.color
	   Color  of  the  images  in  titlebar	 buttons in their default, un-
	   pressed, state. This	element	is for non-focused windows. Default is
	   #000000.

       Note: Button elements (i.e. window.[in]active.button.*) may be  defined
       uniquely	 for  each  type of button ("menu", "iconify", "max", "shade",
       "desk" or "close") by appending the type	after the "button"  node.  For
       example:

          window.active.button.iconify.unpressed.image.color	indicates  the
	   color of the	iconify	button for active windows; while

          window.inactive.button.close.unpressed.image.color  indicates   the
	   color of the	close button for inactive windows.

       This  syntax is not documented by Openbox, but is supported and is used
       by many popular themes. For the sake of brevity,	these elements are not
       listed here, but	all are	supported.

       window.active.shadow.size
	   Size	of the drop-shadow for the focused window, in pixels.  Default
	   is 60.

       window.inactive.shadow.size
	   Size	of drop-shadows	for non-focused	windows, in pixels. Default is
	   40.

       window.active.shadow.color
	   Color of the	drop-shadow for	the focused window, including opacity.
	   Default is #00000060	(black with 38%	opacity).

       window.inactive.shadow.color
	   Color  of  drop-shadows for non-focused windows, including opacity.
	   Default is #00000040	(black with 25%	opacity).

       menu.overlap.x
	   Horizontal overlap in pixels	between	submenus and their parents.  A
	   positive value move submenus	over the top of	their parents, whereas
	   a  negative value creates a gap between submenus and	their parents.
	   Default is 0.

       menu.overlap.y
	   Vertical offset in pixels between submenus and their	parents. Posi-
	   tive	values for downwards and negative for upwards. Default is 0.

       menu.width.min
	   Minimal width for menus. Default  is	 20.  A	 fixed	width  can  be
	   achieved by setting .min and	.max to	the same value.

       menu.width.max
	   Maximal  width  for	menus.	Default	 is  200. A fixed width	can be
	   achieved by setting .min and	.max to	the same value.

       menu.border.width
	   Border width	of menus in pixels. Inherits border.width if not set.

       menu.border.color
	   Border color	of menus. Inherits window.active.border.color  if  not
	   set.

       menu.items.padding.x
	   Horizontal padding of menu text entries in pixels. Default is 7.

       menu.items.padding.y
	   Vertical padding of menu text entries in pixels. Default is 4.

       menu.items.bg.color
	   Background color of inactive	menu items. Default is #fcfbfa.

       menu.items.text.color
	   Text	color of inactive menu item. Default is	#000000.

       menu.items.active.bg.color
	   Background color of active menu items. Default is #e1dedb.

       menu.items.active.text.color
	   Text	color of active	menu item. Default is #000000.

       menu.separator.width
	   Line	thickness of menu separators. Default is 1.

       menu.separator.padding.width
	   Space on the	left and right side of each separator line. Default is
	   6.

       menu.separator.padding.height
	   Space above and below each separator	line. Default is 3.

       menu.separator.color
	   Menu	separator color. Default is #888888.

       menu.title.bg.color
	   Menu	title color. Default is	#589bda. Note: A menu title is a sepa-
	   rator with a	label.

       menu.title.text.justify
	   Specifies  how menu titles are aligned in the titlebar. Type	justi-
	   fication. Default is	Center.

       menu.title.text.color
	   Text	color of separator label. Default is #ffffff.

       osd.bg.color
	   Background color of on-screen-display.  Inherits  window.active.ti-
	   tle.bg.color	if not set.

       osd.border.color
	   Border color	of on-screen-display. Inherits osd.label.text.color if
	   not set.

       osd.border.width
	   Border  width  of  on-screen-display.  Inherits border.width	if not
	   set.

       osd.label.text.color
	   Text	 color	of   on-screen-display.	  Inherits   window.active.la-
	   bel.text.color if not set.

       osd.window-switcher.style-classic
	   Theme  for  window switcher when using <windowSwitcher style="clas-
	   sic"	/>. See	below for details.

       osd.window-switcher.style-classic.width
	   Width of window switcher in pixels. Width can also be a  percentage
	   of the monitor width	by adding '%' as suffix	(e.g. 70%). Default is
	   600.

       osd.window-switcher.style-classic.padding
	   Padding of window switcher in pixels. This is the space between the
	   window-switcher border and its items. Default is 4.

       osd.window-switcher.style-classic.item.padding.x
	   Horizontal padding of window	switcher entries in pixels. Default is
	   10.

       osd.window-switcher.style-classic.item.padding.y
	   Vertical  padding  of window	switcher entries in pixels. Default is
	   1.

       osd.window-switcher.style-classic.item.active.border.width
	   Border width	of the selection box in	the window switcher in pixels.
	   Default is 2.

       osd.window-switcher.style-classic.item.active.border.color
	   Border color	around the selected window switcher item.  Default  is
	   osd.label.text.color	with 50% opacity.

       osd.window-switcher.style-classic.item.active.bg.color
	   Background  color  of the selected window switcher item. Default is
	   osd.label.text.color	with 15% opacity.

       osd.window-switcher.style-classic.item.icon.size
	   Size	of the icon in window switcher,	in pixels.  If	not  set,  the
	   font	 size  derived	from  <theme><font place="OnScreenDisplay"> is
	   used.

       osd.window-switcher.style-thumbnail
	   Theme for window switcher when using	<windowSwitcher	 style="thumb-
	   nail" />. See below for details.

       osd.window-switcher.style-thumbnail.width.max
	   Maximum  width  of  window  switcher	in pixels. Width can also be a
	   percentage of the monitor width by adding '%' as suffix (e.g. 70%).
	   Default is 80%.

       osd.window-switcher.style-thumbnail.padding
	   Padding of window switcher in pixels. This is the space between the
	   window-switcher border and its items. Default is 4.

       osd.window-switcher.style-thumbnail.item.width
	   Width of window switcher items in pixels. Default is	300.

       osd.window-switcher.style-thumbnail.item.height
	   Height of window switcher items in pixels. Default is 250.

       osd.window-switcher.style-thumbnail.item.padding
	   Padding of window switcher items in pixels. This is the  space  be-
	   tween  the  border  around selected items and window	thumbnail. De-
	   fault is 2.

       osd.window-switcher.style-thumbnail.item.active.border.width
	   Border width	of selected window switcher items in  pixels.  Default
	   is 2.

       osd.window-switcher.style-thumbnail.item.active.border.color
	   Color  of  border around selected window switcher items. Default is
	   osd.label.text.color	with 50% opacity.

       osd.window-switcher.style-thumbnail.item.active.bg.color
	   Color  of  selected	window	switcher  items.  Default  is  osd.la-
	   bel.text.color with 15% opacity.

       osd.window-switcher.style-thumbnail.item.icon.size
	   Size	of window icons	in window switcher items in pixels. Default is
	   60.

       osd.window-switcher.preview.border.width
	   Border width	of the outlines	shown as the preview of	the window se-
	   lected by window switcher. Inherits osd.border.width	if not set.

       osd.window-switcher.preview.border.color
	   Color(s)  of	 the  outlines	shown as the preview of	the window se-
	   lected by window switcher. Possible value is	a color	 or  up	 to  3
	   colors  separated  by commas	(e.g. "#ffffff,#000000,#ffffff"). When
	   multiple colors are specified, a  multi-line	 rectangle  with  each
	   line	having the specified color is drawn. If	not set, this inherits
	   the	    on-screen-display	   theme     ("[osd.bg.color],[osd.la-
	   bel.text.color],[osd.bg.color]").

       osd.workspace-switcher.boxes.width
	   Width of boxes in workspace switcher	in pixels. Setting to  0  dis-
	   ables boxes.	Default	is 20.

       osd.workspace-switcher.boxes.height
	   Height  of boxes in workspace switcher in pixels. Setting to	0 dis-
	   ables boxes.	Default	is 20.

       osd.workspace-switcher.boxes.border.width
	   Border width	of boxes in workspace switcher in pixels.  Default  is
	   2.

       snapping.overlay.region.bg.enabled [yes|no]
	   Show	a filled rectangle as an overlay when a	window is snapped to a
	   region.  Default  is	 yes  for  hardware-based renderers and	no for
	   software-based renderers.

       snapping.overlay.edge.bg.enabled	[yes|no]
	   Show	a filled rectangle as an overlay when a	window is  snapped  to
	   an  edge.  Default  is  yes	for hardware-based renderer and	no for
	   software-based renderers.

       snapping.overlay.region.border.enabled [yes|no]
	   Show	an outlined rectangle as an overlay when a window  is  snapped
	   to a	region.	Default	is no for hardware-based renderers and yes for
	   software-based renderers.

       snapping.overlay.edge.border.enabled [yes|no]
	   Show	 an  outlined rectangle	as an overlay when a window is snapped
	   to an edge. Default is no for hardware-based	renderer and  yes  for
	   software-based renderers.

       snapping.overlay.region.bg.color
	   Color  of  a	 filled	rectangle shown	as an overlay when a window is
	   snapped to a	region.	Default	is #8080b380.

       snapping.overlay.edge.bg.color
	   Color of a filled rectangle shown as	an overlay when	 a  window  is
	   snapped to an edge. Default is #8080b380.

       snapping.overlay.region.border.width
	   Border  width  of  an outlined rectangle shown as an	overlay	when a
	   window is snapped to	a region. Inherits `osd.border.width`  if  not
	   set.

       snapping.overlay.edge.border.width
	   Border  width  of  an outlined rectangle shown as an	overlay	when a
	   window is snapped to	an edge. Inherits  `osd.border.width`  if  not
	   set.

       snapping.overlay.region.border.color
	   Color(s) of an outlined rectangle shown as an overlay when a	window
	   is  snapped	to a region. Possible values and the default value are
	   the same as those of	osd.window-switcher.preview.border.color.

       snapping.overlay.edge.border.color
	   Color(s) of an outlined rectangle shown as an overlay when a	window
	   is snapped to an edge. Possible values and the  default  value  are
	   the same as those of	osd.window-switcher.preview.border.color.

       border.color
	   Set	 both	window.active.border.color   and  window.inactive.bor-
	   der.color. This is obsolete,	but supported for backward compatibil-
	   ity as some themes still contain it.

       magnifier.border.width
	   Width of magnifier window border in pixels. Default is 1.

       magnifier.border.color
	   Color of the	magnfier window	border.	Default	is #ff0000 (red).

BUTTONS
       The images used for the titlebar	icons are referred to as buttons.

       The image formats listed	below are supported. They are listed in	 order
       of  precedence,	where  the  first  format  in the list is searched for
       first.

          png
          svg
          xbm

       By default, buttons are 1-bit xbm (X Bitmaps). These  are  masks	 where
       0=clear	and  1=colored.	The xbm	image files are	placed in the same di-
       rectory as the themerc file within a particular	theme.	The  following
       xbm buttons are supported:

          max.xbm
          iconify.xbm
          close.xbm
          menu.xbm
          max_toggled.xbm
          desk.xbm
          desk_toggled.xbm
          shade.xbm
          shade_toggled.xbm

       Additional  icons  can be defined to be shown when the mouse pointer is
       hovering	over the button	in question:

          max_hover.xbm
          iconify_hover.xbm
          close_hover.xbm
          menu_hover.xbm
          max_toggled_hover.xbm
          desk_hover.xbm
          desk_toggle_hover.xbm
          shade_hover.xbm
          shade_toggle_hover.xbm

       One advantage of	xbm buttons over other formats	is  that  they	change
       color  based on the theme. Other	formats	use the	suffices "-active" and
       "-inactive" to align with the respective	titlebar colors. For  example:
       "close-active.png"

       For  compatibility  reasons,  the  following alternative	names are sup-
       ported for xbm files:

          max_hover_toggled.xbm for max_toggled_hover.xbm

       When using png or svg icons, for	a full theme  experience  all  of  the
       following icons should be added:

          close-active.[png|svg]
          close_hover-active.[png|svg]
          close_hover-inactive.[png|svg]
          close-inactive.[png|svg]
          iconify-active.[png|svg]
          iconify_hover-active.[png|svg]
          iconify_hover-inactive.[png|svg]
          iconify-inactive.[png|svg]
          max-active.[png|svg]
          max_hover-active.[png|svg]
          max_hover-inactive.[png|svg]
          max-inactive.[png|svg]
          max_toggled-active.[png|svg]
          max_toggled_hover-active.[png|svg]
          max_toggled_hover-inactive.[png|svg]
          max_toggled-inactive.[png|svg]
          menu-active.[png|svg]
          menu_hover-active.[png|svg]
          menu_hover-inactive.[png|svg]
          menu-inactive.[png|svg]
          shade-active.[png|svg]
          shade_hover-active.[png|svg]
          shade_hover-inactive.[png|svg]
          shade-inactive.[png|svg]
          shade_toggled-active.[png|svg]
          shade_toggled-inactive.[png|svg]
          shade_toggled_hover-active.[png|svg]
          shade_toggled_hover-inactive.[png|svg]
          desk-active.[png|svg]
          desk_hover-active.[png|svg]
          desk_hover-inactive.[png|svg]
          desk-inactive.[png|svg]
          desk_toggled-active.[png|svg]
          desk_toggled-inactive.[png|svg]
          desk_toggled_hover-active.[png|svg]
          desk_toggled_hover-inactive.[png|svg]

DEFINITIONS
       The handle is the window	edge decoration	at the bottom of the window.

SEE ALSO
       labwc(1), labwc-config(5), labwc-actions(5)

				  2026-03-04			labwc-theme(5)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=labwc-theme&sektion=5&manpath=FreeBSD+Ports+15.0.quarterly>

home | help