CSS on window borders experimental layout language

cowbellI’m happy to announce the first experimental version of Metacity with support for CSS window borders (“Cowbell”). This work was largely supported by Collabora Ltd.

You can:

This diagram should explain everything, perhaps.

I would especially like to hear from:

  • theme artists, to let me know whether it’s adequately powerful;
  • anyone else interested in hacking on this with me;
  • the GTK client-side decoration people, so that we can harmonise the way we represent things;
  • people who know a lot about CSS and can offer insights into the suitability of the way we represent things;
  • people who know a lot about the Dublin Core and can offer insights into whether our metadata system uses it appropriately;
  • maintainers of other window managers (especially Mutter), so we can talk about including CSS support in other window managers;
  • everyone else, to suggest which of the directions for future development are most interesting.

I think it may perhaps be helpful to set up a Cowbell mailing list, so that we can compare notes on implementations. For example, I haven’t written down anywhere how to place an image to the right of the title, which is commonly needed (you use border-image).

Photo © Craft*ology, cc-by-nc.

4 Responses to “CSS on window borders experimental layout language”

  1. Piotr Pyclik says:

    Great to hear about it! I hope Mutter will include support for CSS, it would make creating themes much easier.

  2. iain says:

    cowbell is already used as the name of a gnme mp3 tag editor
    http://more-cowbell.org/index.php/Main_Page although sadly it seems pretty dead

  3. Looks like this might become a huge improvement over current Metacity theming. Even better if it becomes cross-WM.

    Do you (intend to) support multiple background images and border-images?
    http://www.w3.org/TR/css3-background/#layering
    http://www.w3.org/TR/css3-background/#the-border-image-source

    What about gradients, ideally with alpha/masking and layering?
    http://webkit.org/blog/175/introducing-css-gradients/