Today I installed Fedora 20 (from Nightly Build) that comes with GNOME 3.10 Beta and it (Fedora) feels amazingly stable (except the really buggy installer) for a pre-alpha release.
I had around 2 months to watch any GNOME Development process, and I run into a real surprise with what I saw! I think that GNOME 3.10 will be even better from what GNOME developers were planning 6 months ago, and it is clearly a release above expectations!
Client Side Decorations
CSD will be the first thing you will notice in GNOME 3.10 Apps. CSD combines the Title/Control + Menu Bars and all the properties and functionality of them, into a single header bar. While this approach brings Pros and Cons, the advantages seem to be stronger, and this designing (technically also) choice is expected to be welcome by the users.
GNOME Clocks 3.10 is one of the many GNOME Apps with CSD
A disadvantage of CSD is the inconsistency that brings between Apps that support them (mostly GNOME Apps) and Apps that don’t (3rd party Apps, like Firefox). However this is mostly in theory, because in practice, you won’t really be bothered from it.
What might bother you is the fact that you can’t use max/min controls within Tweak Tool. Tweak Tool still has the max/min option, but it only affects the non-CSD Apps.
The redesigned Tweak Tool 3.10, brings some really nice new features!
So what happens here, is that CSD Apps (like Tweak Tool) ignore the Max/Min Options, while the rest Apps (like Terminal) use it. As far as I know, none works to integrate Max/Min buttons in CSD.
Some obvious advantages of CSD is the better theming, the Wayland compliance, the better mouse control and the space saving -which is a lot. A bar-height of 20px into a fullscreen width of 1900px saves around 38k of meaningless pixels.
But the real advantage of CSD is that gives to developer the ability to change bars state depending on the running case of App. For instance check what’s happening in GNOME Music.
On the left is the normal state of CSD and on the right is CSD on select mode. The close button is hidden, and it will prevent us to accidentally close the App while we’re making a selection. Representing different menus depending the state of the App, is certainly a nice addition.
Another nice feature of CSD is the responsive design, at least in the case of Files. Imagine that you have GNOME Files and you navigate inside 4-5 Folders.
At this point you can drag the App from the empty space between the last Tab and the Search Button. So what’s happening if we reduce the width of the Window or increase the number of Folders?
Simple, the application will keep a fixed minimum free space to let us drag the window, by hiding folders navigation and adding those 2 arrows.
Responsiveness will be a major goal of the next GNOME releases. Imagine Grids that will reduce/increase their size and their columns number depending of the available width. For instance when you see thumbnails in GNOME Files you have notice an ungly blank space on the right when a thumb doesn’t fit. Future releases of GNOME will increase/decrease thumbs size to fit exactly to the current width, in real time as you are scaling the window.
CSD is just one of the new features of GNOME 3.10, hope you like it!