Desktop theming is handled by a theming engine, commonly 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.

Theming for a specific desktop environment is commonly done as part of said desktop environment (either upstream or by the corresponding Debian packaging team). Adapting desktop theming for a unified look&feel across desktop environments with default full installations of Debian is done by the DebianDesktop team.


FIXME: Rewrite rest of page (historical purpose was internal 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