Desktop theming is handled by a theming engine, commonly handled as part of a widget toolkit. For GNOME (and derived desktops Cinnamon, Mate), Xfce, and Lxde it is handled by GTK, and for KDE and ?LxQt it is handled by Qt Widgets. Other less commonly used widget toolkits include wxWidgets and FLTK.

A theming engine integrates icons, colors and other styling fragment data when composing widgets (e.g. the corner shape of a window or the Close button shadow).

A set of data is stored in one of multiple places defined in an XDG standard specification.

Icons follows a naming scheme and are formatted in one or more formats (e.g. SVG, or multiple sizes of PNG), defined in an XDG standard specification.

---

FIXME...

Reference notes for local theme corrections of a Sugar-100 based theme for an XFCE environment, meant as an example case and a starting point for developing a desktop designer's guide to theming.

Problem

Visual inconsistency: The Sugar theme is designed with the Gtk toolkit, and some applications use the standards offered by the Qt toolkit (or others).

Strategies

Visual Design

Noted flaws

Sugar theme and Sugar icons.

Notes

File structure

Theme files are located in usr/share/themes/

Window manager icons

PNG and XMP formats located in usr/share/themes/*/xfwm4/

variations:

Content of icon theme sugar.orig

Themes correspond with their iconset in usr/share/icons/

Decisions

Tasks

Gtk

A list of gtk+ applications: https://en.wikipedia.org/wiki/List_of_GTK%2B_applications

Qt based applications

tk

Mozilla

Todo