Xfce

Subdomains

Finally – 5 months after the release of Gtk+3.20 – I’m happy to announce the release of the first version of Greybird supporting it.

Why has it taken so long? – you

The Widget Factory – 3.20

may ask yourselves – and one reason was certainly me being totally busy with other things, but another one was that Ubuntu didn’t ship it in its 16.04 LTS release (which was a totally sane decision, by the way). Because of the latter it took some time before the issue of having a theme that supports Gtk+3.20 became pressing enough for me to take action.

Anyway, now it is done. (At least mostly.)

While porting the theme (in this case really: porting, not just: adding support for) I also decided to rebase it on Adwaita. Over the last releases so much stuff had piled up, so many quick fixes or patching up visual nuisances to support “the next Gtk+ release” that the theme had become an unmaintainable jungle – I frankly couldn’t have told you which line mattered anymore. While rebasing, I also went from CSS to SASS, which was the only right decision, as I’m sure now after having gone through with it. It made the code so much more maintainable and readable (kind of reminding me of the first Gtk+3 releases, when themes were still a lot leaner in terms of LOC).

So yeah, I’m pretty happy with where this has been going. There are still some rough edges (e.g. progressbars are probably not 100% greybirdy) and things I haven’t added support back for (e.g. elementary’s Granite widgets), but I think what is there now warrants an initial release as things still look consistent between Gtk+2 and Gtk+3 applications.

One final note: Greybird has recently switched to a new versioning scheme, which basically mirrors the Gtk+3 release numbers the theme works best with.

So I’ve been busy lately porting Xfce apps and components to Gtk+3 (you can see on the roadmap page for 4.14 that we’ve come some way already – only the really uncomfortable behemoths are missing ) and since I’ve been working on apps which I haven’t touched before (and which haven’t really seen much or any development in a while).

I thought I’d do a quick overview of some of my recent activities so everyone knows Xfce is still alive.

clipman

I have ported clipman to Gtk+3 mostly as an exercise, to get back to coding and to re-acquaint myself with the “fun” that is porting to Gtk+3 (including the obligatory #ifdefs for different Gtk+3 releases).

I didn’t really have the energy to add any new features there (apart from general Gtk+3 stuff like symbolic icons, which is nice for the panel plugin), but it had the intended effect for me plus Eric and Florian helped out, which made it more fun. In the end we even got Steve to sit down and crank out a very nice fix for an extremely widespread issue in Xfce.

notifyd

Basically Ali did all the hard work of porting notifyd to Gtk+3. I was left with the hard work of polishing the edges and making it release-ready (which ended up being much more work than I anticipated and now that I’m mostly familiar with the codebase I’ve also started to add – for now: small – features). So yeah, 0.3.0 is out! Hooray!

I also managed to write down some basic docs for notifyd (they’ll be linked to in the 0.3.1 release) which also explains the theming aspect a little bit.

For now I’ve planned some features – we’ll see when and if I get to them, but amongst others:

“Do not disturb” mode (still have to figure out where and how to display the “missed” stuff or whether to bother with that at all)

More themes by default (currently we only have good ‘ol Smoke and evergreen ZOMG PONIES!)

More bugfixing

Better docs

settings

This is actually Sean’s project and he already ported most of the dialogs (only display missing at the time of writing) and this is really exciting as it is one of the core components. Can’t wait to install this beast on a productive machine to see what will happen

libxfce4ui

I didn’t do much here apart from handling the release and fixing the theming of XfceTitledDialog for Gtk3.20 (and below) in accordance with the Gtk+ Devs (still unreleased, will come with libxfce4ui-4.13.1). Generally speaking now that Glade support is fixed and we have working dialogs I guess there’s not much more to do in that lib (I may be wrong though).

terminal

This is Igor’s playground now, I merely helped with porting the settings dialog and getting rid of some rough edges there. I’m using the Gtk+3 port of the terminal on a daily basis though and am very happy with it – nice work Igor!