Green Island

Pier Luigi Fiorini edited this page Dec 15, 2013 · 10 revisions

Green Island extends the QtCompositor API and provides QtQuick components to make Wayland compositors with Qt and QtQuick.

Unfortunately the QtCompositor library is not yet ready to make a compositor that can be used day to day. The long term plan is to use Green Island to build the Wayland compositor for Hawaii, but until it is ready we make a C++ plugin for Weston available.

The Hawaii compositor made using Green Island is here.

Green Island won't probably be able to replace the Weston plugin until Hawaii 0.5. There are many tasks to do at different levels of the stack (QtCompositor, Green Island or the Hawaii compositor).

We cannot switch from Weston to the Hawaii compositor until all features are provided. A very important feature currently missing is XWayland compatibility and that will probably be achieved upstream on the qtwayland module.

Here's a table of features that are available on either Weston or our plugin and the corresponding status in the qtwayland, greenisland and hawaii-shell modules.

Legend:

Explaination
X Implemented
- Yet to be done
? To be done, but unsure this is the right module
+ Partially implemented

Modules:

Module Description
weston Weston compositor
xwayland.so XWayland plugin for Weston
cms-colord.so colord plugin for Weston
hawaii-desktop.so Hawaii plugin for Weston
qtwayland qtwayland module
greenisland greenisland module
hawaii-shell Hawaii compositor

Features:

weston xwayland.so cms-colord.so hawaii-desktop.so qtwayland greenisland hawaii-shell
Compositing X X
Idle and inhibit X X
X11 X -
Color Profiles X ?
Layers X X - -
Protocols X -
hawaii.xml X +
-> Surface roles X +
-> Custom position X X
-> Available geometry X -
-> Key bindings X X
-> Window tracking X X
-> Popups X X
-> Modal dialogs X -
-> Minimize and restore X -
-> Workspaces X -
-> Element grabbing X X
-> Grab cursor X -
-> Lock screen X X
-> Windows switching X -
input-method.xml + X -
text.xml + X -
notification-daemon.xml X -
screensaver.xml X -
Effects X -
MapSurface X X
UnmapSurface X X
FadeMoving X -
GridDesktops X -
Minimize X -
Opacity X -
Scale X -
Zoom X -
Workspaces X -
Screenshot X - -
Screencast X - -
Zoom X X - -
Backlight X X -
Sleep/Wake X X -