Client side decorations



Against https://bugzilla.gnome.org/show_bug.cgi?id=694381 and in the
branch wip/csd-for-review i've posted a set of patches that condenses
the work that myself and Kristian have done to try and implement
support for client side decorations for GTK+. The main goal has been
to enable the use of GTK+ against Wayland but one of the patches
allows you to use this against existing platforms too by setting an
environment variable.

There are still some signficant gaps, but I think this code is ready
to be matured in the mainline rather than in a branch. I know of the
following issues:

- Under Adwaita you don't get any border - the patches add the CSS
decorations to the default.css file which doesn't get used under
Adwaita. This could be resolved by including appropriate rules into
the Adwaita CSS theme files
- Also under Adwaita you currently have no way to resize the window
since there is no resize grip present - under the default theme there
is however a resize grip. I plan to improve this by allowing resize on
all sides by using the window border as a resize area.
- There is currently only a close button, even if you use the support
to enable against a non-Wayland backend
- On the gtk3-demo combo box test there appears to be an issue with
the border width (setting this to zero in the test resolves the
problem) - i'm currently investigating this further

Many applications seem to work well: Nautilus, Evince, gedit

I acknowledge the feature freeze has gone past (for some reason my
internal calendar is whole month askew - I was working on the
assumption I still had a whole month left) but i'd hope I can argue
for its inclusion in that the code should have no impact (and i'd love
some help with verifying this) on any existing users.

Cheerio,

Rob


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]