Design/Whiteboards/Color Handling

From The Document Foundation Wiki
< Design‎ | Whiteboards
Revision as of 2012-04-01T14:25:40 by Astron (Talk | contribs) (move jefs post to more suitable place (hopefully))

Jump to: navigation, search

The aim is to improve the usability of color handling in LibreOffice. Furthermore, data changes shall prepare future UI changes to enable e.g. meaningful grouping of colors.


Scope of the Work

In Scope Out of Scope
  • Fix usability issues
  • Easier color management (adding/changing/deleting colors)
  • Gradients/hatches/...
  • Palettes
  • Improved color palette data structure
  • New UI technology (= too much toolkit work)

Technical Constraints

Status and Roadmap

  • tbd: Help for Other Contributors (Documentation and Translation, QA)

Definition of Terms

  • Highlighted color: The color which has been temporarily highlighted by the user (not selected yet)
  • Selected color: The color which is currently active for the selected item (e.g. text)
  • Recent color(s): The color(s) that have been recently selected by the user (e.g. within the document)

Current State

  • Foreground / Background Color Settings from Toolbars
  • Various Drop-Downs for Color Settings (e.g. in Format Dialogs)
  • Appearance Settings for Application(s) in Tools - Options
  • Impress/Draw: Color Toolbar
  • Calc: Tab Color (for Calc Sheet), see Specification on OOo Wiki Page

Issues and User Requests

  • LibreOffice FreeDesktop Bugtracker: All issues tagged with "color_handling".
    • Issue 105642 Re-design and UI improvements for color palettes (meta-issue)
    • Issue 99210 Font color palette reverts back to default color after using a non-default font color
    • Issue 110551 Color palette floaters should adapt their size to the number of colors
    • Issue 112865 Functions calling floaters (like color palettes) don't work when added to menus
  • Ubuntu Brainstorm: Idea 12499 More intuitive and workable colours in OpenOffice


Today's Behavior

Pros Cons
Icon Dropdown Keyboard selection (arrows only, no text selection)


  • Color field shows the recent color, not the selected color
    • Unclear at first sight
  • Small color field
  • Vague Tango icons for background color (character background, paragraph background)

Color grid

  • Selected color is not shown
  • Small color fields
  • No grouping
  • No visual representation of Automatic
List Dropdown
  • Keyboard selection (arrow + text selection)
  • Shows only a few colors at a time
  • Requires scrolling
  • Handles are "hidden" in the menu (hard to customize the gradient for the current object)

Competitive Analysis

  • Like LibreOffice, but interesting comment "deferred because of new color management concept that will follow in near future and solve this problem from root cause on." on OOo wiki page.
  • Microsoft Office: Documentation of the internal structure of a Microsoft Office like Color Palette
  • Apple Pages: Blog post with good description / pictures of the Apple Pages Color Palette.
  • IBM Lotus Symphony: Design idea in the Design Team blog.

Design Proposals and Idea Collection


Thoughts and Ideas

Color Handling:


  • How are colors managed in ODF?
  • Basic Concept for the Color Palette(s)?:
    • Default Palette (without User/Document Colors)
    • Default Palette includes User/Document Colors
    • Default Palette + Custom Palette + ...
    • ...
  • Do we need recently used colors (if yes, shared accross all LibO applications, accross the document type, only for currentwindow)
  • Do we want to go with AutoPreview? If yes, we'll need a rough specification for that before we start with the color stuff (we need a general spec for all who also want to implement AutoPreview).
  • Do we want to have something like Themes for the current document (Theme: Color Palette is bound to the Document/Template and not to the current application)?
  • Do we want to work on a new LibO specific color palette?
  • Do we need "structured" data for the color palette files? (Proposed Meta Data: Name, Comment, Author, Date/Version; plus Name, color values for each color).


  • Naming of colors that are stored within documents but not available in the current --> How does the user know that this is a "non-standard" color? How does LibO set the name ("Color n", n=number)?